Skip to main content

Full text of "Load MSX (AR)"

See other formats


2,70 Rep. Argentina 


ncvioiH rnriH uounnivo ul lh /vvn/r// 1 


0 



['y'\ 





5 rd }9, 

\ 7 ^ d 0 J; ^ 



Ve A ;^e <aX 


m ^ a\ Cri>*-* a \* c 

* fltt®-, C<V' 


c <$>:> 4 ' 


■\ 















\ o ' f"' r 

••• •;■:•: ,. y_ >;>>:> • Vi;. 

•,;^y>' ; ^ ; ' ; ; m> *i t:&& : 


Ala 

Talent 

nada le es imposible 


El Club de Usuarios de MSX 
ya funciona en sus tres direcciones: CABILDO 2027 - 1° A 
CORDOBA 654 - P.B. (1054) y TUCUMAN 2044 - 1° - CAPITAL 

Invitamos a los felices usuarios de Podra probar todos los accesorios 
la TALENT MSX al curso gratuito de la linea MSX, jjdesde disketteras 
de introduccion al fabuloso mundo hasta robots!! 


de MSX. 

Participe del Club de Usuarios 
de MSX y encuentrese con sus 
amigos que tambien tienen la 
TALENT MSX, e intercambiara 
programas; datos y chimentos. 


Podra ver y leer todo lo que le interese 
sobre la norma MSX: catalogos. 
libros y revistas de todo el mundo. 
Todo con la seguridad, respaldo 
y seriedad que solo TALENT puede 
brindarle. 


iPara inscribirse, no olvide traersu factura de compra! 

ClubTalent 

MSX es marca registrada de MICROSOFT CORPORATION. 


dialogo - />. /' 





LOAD 



Director General 


Ernesto del Castillo 


Director Editorial 


Cristian Pusso 


Director Periodistico 


Fernando Flores 


Director Financiero 


Javier Campos Malbran 


Secretario de Redaccion 


Ariel Testori 


Redaccion 


Andrea Sabin Paz 


Arte y Diagram acion 

Fernando Amengual y 
Tamara Migelson 


Departamento de Avisos 

Oscar Devoto y 
Nelso Capello 


Departamento de 
Publicidad 


Guillermo Gonzalez Aldalur 


Servicios Fotograficos 

Image Bank, Oscar Burriel, 
Victor Grubicy y 
Eduardo Comesana 


Load Revista para usuarios de la norma MSX 
es una publicacion mensual editada por Edi- 
torial PROEDI S.A., Parana 720, 5° Piso, 
(1017) Buenos Aires. Tel.: 46-2886 y 
49-7130. Radiollamada: Tel.: 311-0056 y 
312-6383, codigo 5941. Registro Nacio- 
nal de la Propiedad Intelectual: E. T. M. Re- 
gistrada. Queda hecho el deposito que in- 
dica la Ley 1 1 .723 de la Propiedad Intelec- 
tual. Todos los derechos reservados. 
Precio de este ejemplar: A 2,70 
Impresion: Calcotam, Fotocromo tapa: 
Columbia. Fotocomposicion: Interamerica- 
na Grafica. 

Los ejemplares atrasados se venderan al 
precio del ultimo numero en circulacion. 
Prohibida la reproduccion total o parcial de 
los materiales publicados, por cualquier me- 
dio de reproduccion grafico, auditivo o me- 
canico, sin autorizacion expresa de los edi- 
tores Las menciones se realizan con fines 
informativos y tecnicos, sin cargo alguno 
para las empresas que los comercializan y/o 
los representan. Al ser informativa su mi- 
sion, la revista no se responsabiliza por cual- 
quier problema que pueda plantear la fabri- 
cacion, del funcionamiento y/o aplicacion 
de los sistemas y los dispositivos descriptos.^ 
La responsabilidad de los artlculos firmados 
corresponde exclusivamente a sus autores. 
Distributor en Capital: Martino, Juan de 
Garay 358, P. B. Capital. 

Distribuidor interior: D G P: Hipolito Yri- 
goyen 1450, Capital Federal. T.E. 38-9266/ 
9800. 



sii 

x 2 a 

FRANQUEO PAGO 
CONCESION N“ 2538 

£ £o 
8^< 

TARIFA REDUCIOA 



ANO I N° 9 


GANADORES DEL 
CONCURSO 


f 




«I*CR»ISTE 50* 


Victor Villarraza gano el certa- 
men organizado por Load MSX 
y auspiciado por Telematica, con 
un original juego de inteligencia. 
El segundo premio lo obtuvo Da- 
niel Francesch, con un utilitario 
muy completo. (Pag. 5) 

APLICACIONES PARA 
TOSHIBA 



“NOS DESPIERTA LA MENTE” 



ste comentario lo hizo el ganador del concur- 
so organizado por nuestra revista, al referir- 
se a este certamen, y agrego que de esta ma- 
nera no se “deja caer a la MSX como una simple ma- 
quina de juegos”. Precisamente ese es nuestro objeti- 
vo: alentar al desarrollo de la inteligencia. # ■ 

Victor Villarraza nos dijo que todo lo que sabe lo apren- 
dio en su casa, haciendo programas de prueba y prac- 
ticando rutinas (“es la mejor forma de aprender” 
recalco). Y ademas compartio information, trucos y se- 
cretes con usuarios de su Ciudad, Parana. “La compu- 
tation nudea a muchos y ayuda tambien a ser mas 
sociable”, enfatizo al respecto. Y justamente esa es la 
intencion de Load MSX : reunir a' amigos que juntos 
transited el apasionante mundo de la informatics. 


LOS EDITORES 

*k A 



COMO ORDENAR 
DATOS 


Ordenar datos en forma ascen- 
denteo descendente , son ope- 
raciones frecuentes en compu- 
tacion. Veremos dos de los 
metodos basicos. (Pag. B6). 


Para hacer mas espontaneo el 
uso de la Toshiba HX-20 y mar- 
cando una relacion mas intensa 
entre el software y el hardwa- 
re, la maquina viene acompana- 
da de un interesante y practico 
paquete de programas de aplica- 
ciones utiles (Pag. SO) 


COMPONIENDO COMO 
BEETHOVEN 


Este es un soft del tipo de los uti- 
litarios, que les da una ayuda a 
los compositores amantes de la 
musica. (Pag. 2S). 



MANEJANDO LAS PAN- 
TALLAS 


Veremos como podemos traba- 
jar cambiando algunos datos es- 
trategicos de la VRAM (memoria 
de video). (Pag. 24). 


ASSEMBLER 


Gracias^ la instruccion LD. una 
de las mas simples del Assembler, 
podremos hacer un programa 
que abre una ventana.. (Pag. 

30). 


PROGRAMAS 


Un escenografo en la computa- 
dora (Pag. 12). Test matema- 
tico (Pag. 27). Cursiva (Pag. 
22). Fichero (Pag. 28). 


SECCIONES FIJAS 


Noticias MSX (Pag. 4.) Sortile- 
gios (Pag. 20). Soft al dia(Pag. 
32). Buzon (Pag. 34). 







CARTRIDGE BANCARIO 

1 En el marco del convenio que Telema- 
ll tica ha firmado con el Banco del Buen 
Ayre, la productora de la Talent MSX 
1 desarrollo un nuevo medio para que los 
1 clientes de esa entidad crediticia cuen- 
i ten con los servicios de la banca elec- 
tronica. Se trata de un cartucho que 
' contiene todas las instrucciones para po- 



der acceder a la red. Para lograrlo an- 
tes solo se podia a traves de diskettes 
o cassettes. En el primer caso, el costo 
de la diskettera, y en el segundo el tiem- 
po que implicaba cargar el programa, 
eran impedimentos para el facil acceso 
al sistema, algo que con los cartuchos 
se soluciona, ya que son de bajo costo 
y rapidez operativa. 

Cabe recordar que el sistema de banca 
electronica del Banco del Buen Ayre in- 
cluye la posibilidad de realizar consultas 
de saldos, transferencias de fondos, 
compras por catalogo, listados de mo- 
vimientos realizados y otros servicios. 
El software fue desarrollado, en su to- 
talidad, por Telematica. 


GAME CREATOR 


Las tareas de Microsoft en MSX no se 
agotan. Han creado un programa titu- 
!ado GAME CREATOR, es decir, crea- 
dor de juegos, que se lanzara en casset- 
tes a bajo costo. Este soft especial per- 
mite que hasta el mas inexperto progra- 
mador cree sus propios juegos, inclusi- 
ve sprites, musica y secuencias animadas. 
Todo se puede controlar con un simple 
joystick. 


El unico consejo que propone Microsoft 
antes de utilizar GAME CREATOR, es 
practicar jugando con varios de los pro- 
gramas que se adquieren en los comer- 
cios y luego si, empezar a crear los 
propios. 


LENGUAJES PARA 
TALENT MSX 


ua Talent MSX puede operar con diver- 
sos lenguajes. Entre ellos, destacan los 
tecnicos de la firma Telematica, los que 
actualmente se encuentran disponibles 
en el pais son: Macro-Assembler con 
Linkeditor; MSX C; Turbo Pascal; Mi- 
croprolog (interprete); Lisp (editor); Lo- 
go; Basic (compillador); RM Cobol 
(Compilador); Cobol 80 (comp.) y D 
Base II. 


COMPUTADORAS 
EN LA PLAYA 


Desde fines de diciembre funcionan en 
Pinamar cuatro centros de informacion 
turistica para brindar a quienes visitan el 
balneario datos actualizados sobre dis- 
ponibilidades de alojamiento hotelero, 
estado y pronostico del tiempo, acon- 
tecimientos culturales, deportivos y so- 
ciales y nomina de comercios, entre 
otros datos utiles. 

Lo caracteristico de dichos centros es 
que estan equipados con sistemas Talent 
MSX, cada uno de los cuales esta con- 
formado por un teclado, monitor, im- 
presora y diskettera. Telematica formo 
al personal que opera las computadoras, 
que depende de la Municipalidad local, 
y tambien desarrollo el programa de 
operacion del sistema. 


CONVENIO 
Y CONCURSO 


Por medio de un convenio realizado en- 
tre la empresa Telematica y el IDES (Ins- 
tituto de Ensenanza Superior) este ulti- 
mo llama a concurso para el otorga- 


miento de licencias para la representa- 
cion del mismo en la Capital Federal y 
el Gran Buenos Aires. 

Estos futuros licenciatarios podran de- 
sarrollar diversas actividades en zonas 
designadas con exclusividad, ofreciendo 
una amplia gama de servicios a la comu- 
nidad. Entre ellos encontramos: Dicta- 
do de cursos para usuarios de micro- 
computadoras y para profesionales in- 
teresados en las posibilidades de este ti- 
po de herramienta, carreras de capaci- 
tacion, creacion de un centro zonal de 
usuarios donde se pueden evacuar diver- 
sas preguntas, intercambiar y comentar 
experiencias y hasta consultar bancos de 
datos, entre otros. 

Asi Telematica brinda todo su apoyo pe- 
dagogico y asesoramiento permanente 
en todas las areas que abarca este 
proyecto. 


ARCHIVOS 


EN LOGO 


La posibilidad de trabajar con archivos 
con el lenguaje Logo en MSX es ya una 
realidad gracias al software que han de- 
sarrollado para las Talent. En forma sin- 
tetica, son una serie de “primitivas” 
nuevas que se incluyen dentro del Lo- 
go, las que permiten el uso de archivo, 
cosa que hasta ahora no podia realizar- 
se en ese lenguaje. 

El diskette que contiene este soft toda- 
via no se puede adquirir a nivel comer- 
cial, porque aun no se ha hecho el ma- 
nual de instrucciones, pero pronto es- 
tara disponible para el publico. 



Pag. 4 




LOS MEJORES 
PROGRAMAS PARA MSX 


Victor Villarraza gano el certamen organizado por 
Load MSX y auspiciado por Telematica, por un ori- 
ginal juego de inteligencia. El segundo premio lo ob- 
tuvo Daniel Francesch, con un utilitario muy 
completo. 





La eleccion del jurado fue dificil debi- 
do al alto nivel de la mayoria de los 
participantes. 

Se reclbieron programas de gestion, 
educativos, entretenimientos originales, 
y otros de inteligencia artificial. 

El ganador fue Victor Villaraza quien 
obtuvo el periferico Talent y la beca 
provista por Telematica S.A. Este entre- 
rriano creo un programa muy original, 
bajo el nombre de “CHESSING”, que 
es una mezcla del estanciero, el ajedrez 
y los dados, mas preguntas educativas. 

El software, totalmente realizado en Ba- 
sic, es sumamente entretenido. Conti- 
nuamente el juego nos presenta distin- 
tos estados y variaciones que hacen 
mantener a la computadora y al jugador 
en constante comunicacion. El autor 
conjugo reglas de conocidos juegos de 
mesa. 

Pero no solo basta con tomar decisio- 
nes y tener la suerte de nuestro lado pa- 
ra ganar, sino que se debe contar con 
conocimientos de gramatica y geografia. 
En sintesis, este amigo entrerriano de- 
mostro poder dominar la programacion 


Basic de esta norma estandar. 

Pero tambien hablemos del segundo 
triunfador que gano un periferico Talent 
provisto por Telematica S.A. Fue un 
porteno de 18 anos llamado Daniel 
Francesch. Ingreso al mundo de los or- 
denadores hace un par de anos, pero 
demostro con su programa “GAFIC II”, 
que no hace falta demasiado tiempo para 
crear excelentes programas. 

Se trata de un software que ayuda al 
usuario a crear fantasticas pantallas. 
Pero no se termina al formar efectos 
visuales multicolores. Tambien podemos 
guardar nuestras creaciones para luego 
incorporarlas en otros programas. 
Daniel nos conto que a este programa lo 
fue componiendo lentamente, agregan- 
dole de a poco las distintas opciones con 
las que ahora cuenta. 

Este es un utilitario muy completo, pe- 
ro no por eso dificil de manejar. El soft- 
ware incluye un menu con la explicacion 
de las opciones. 

Se puede manejar con joystick o tecla- 
do: dos posibilidades que Daniel tuvo en 
cuenta para los distintos usuarios. 


Grafic II esta formado por un progra- 
ma principal en BASIC y dos rutinas en 
ASSEMBLER, demostrando el ganador 
un total dominio sobre una MSX. 

A Victor y a Daniel, nuestras felicitacio- 
nes por haber realizado excelentes 
programas. 

Seleccionar las 3 menciones no resulto 
tarea sencilla. 

La primera de ellas fue un programa lla- 
mado “Evolucion” realizado por Nico- 
las Dario Moyano que muestra los co- 
mienzos del hombre, su evolucion junto 
al planeta, marca los hitos mas impor- 
tantes ce este siglo como la primera 
guerra mundial, la segunda, la aparicion 
de las computadoras, y la llegada del 
hombre a la Luna. 

Comienza con un paisaje desolado, por- 
que despues de tanta evolucion tal vez 
el fin del planeta sea una realidad y co- 
mience todo de nuevo, con un paisaje 
similar. 

Este soft esta desarrollado en BASIC y 
Assembler con buena resolucion grafi- 
ca. Pertenece a la categoria de 
educativos. 

La segunda mencion se llama ‘‘Mi Repu- 
blica Argentina” y es obra de Pedro Fa- 
vio Azcui, de Avellaneda, provincia de 
Buenos Aires. Es Educativo, y nos pre- 
senta un excelente paseo por toda la 
geografia de nuestro pais. Pedro Favio 
nos dijo que le llevo mucho trabajo la 
generacion de las pantallas de las pro- 
vinces, y que lo fue haciendo de a poco. 

Los datos de superficie con que cuenta 
el programa son del Instituto Geografi- 
co Militar y todas las cifras de poblacion 
fueron consultadas al Instituto Nacional 
de Estadisticas y Censos (del ultimo cen- 
so del ano 1980). 

La ultima mencion corresponde al pro- 
grama titulado ‘‘El Corazon”, donde se 
muestra precisamente su funcionamien- 
to. 

Lo ideo Carlos Alejandro Escobar, de 
San Pedro de jujuy. 

Tambien es educativo. 

Nos sorprendio muy gratamente ver la 
resolucion de las pantallas y el profun- 


Pag. 5 



^ do conocimiento que tiene sobre el 
’ tema. 

; ^ Podremos ver y escuchar los latidos del 
corazon, desde el de un elefante hasta 
el de un pequeno picaflor. Es un viaje 
interesante por nuestro interior, cosa 
que habitualmente no resulta simple, 
i Finalmente agradecemos a todos los 
, participantes y los invitamos a enviar tra- 
1 bajos al nuevo concurso anunciado por 

i nuestra revista. 


l 



“LA ME.TOR FORMA DE APRENDER” 


Realmente, me siento muy feliz 
de haber participado con exito 
en este concurso. Estoy 
conforme con el trabajo, pero 
como ya dije, la MSX es muy 
nueva y la tarea de aprender a 
usarla, sobre todo en el interior, 
recien comienza. Por mi parte, 
todo lo que se lo aprendl en mi 


casa, haciendo programas de 
prueba y practicando rutinas. 
Creo que es la mejor manera de 
aprender, porque para ml, 
aprender y comprender el BASIC 
es como aprender a hablar, hay 
que escuchar, repetir y practicar, 
aunque a veces saiga mal. 
CHESSING esta todo en BASIC, 
ya que con el lenguaje de 
maquina no me llevo nada bien. 
A ml me gusta mucho los juegos 
de mesa, y cuando me sugirieron 
la idea del “Estanciero” 
comence a ambientar el mlo. 
Tenia que ser algo con 
casilleros, y estaba leyendo una 
revista cuando vi el juego 
“Archon” para Commodore. Ahl 


se me ocurrio que el escenario 
mas apropiado era un tablero de 
ajedrez. Donde el jugador bianco 
competla con el negro. Despues 
recordando el libro “Alicia en el 
pals del espejo”, me acorde de 
como Alicia cuando llegaba al 
final de tablero, se coronaba 
reina. Fue as! como se me 


ocurrio el desenlace de mi juego, 
una coronacion. Pero tenia que 
introducir plata, y para esto 
programe que hubiera que 
comprar tierras. Tambien le 
agregue tarjetas de la suerte con 
8 variantes al azar. Con todo 
esto, todavia le faltaba algo al 
juego, por lo que decidl 
introducirle una pantalla 
adicional donde se hacen 
preguntas, transformando el 
juego en entretenimiento 
educativo. 

Anote todo esto en un papel, 
hice el programs de bloques y 
me puse a hacerlo. Primero hice 
el cuerpo principal, lo grabe, y 
despues le ful poniendo detalles 


para hacerlo mas divertido, 
musica, presentacion, 
coronacion, graficos. Para ml lo 
principal es que todo sea prolijo 
y este donde debe estar. Claro 
que el juego es un poco lento y 
nos tiene que gustar la tematica, 
porque sino resulta aburrido. Lo 
pull bien y cuando no tuvo 
ningun error lo grabe y se los 
mande. Todo esto en no mas de 
tres o cuatro dlas. 

Me gusta mucho programar, y 
sobre todo cuando tengo un 
incentivo como este concurso. Y 
creo que es un poco lo que nos 
pasa a todos pero por suerte 
este tipo de cosas es la que nos 
despierta la mente y no deja caer 
a la MSX como una simple 
maquina de juegos, sobre todo a 
los que como a ml tienen la 
computadora como “hobby” y no 
con un uso tecnico o 
profesional. Por eso siempre 
trato de contactarme con los 
usuarios de Parana, y as! 
compartimos informacidn, trucos 
y secretos. Porque creo que la 
computadora nuclea a muchos y 
ayuda tambien a ser mas 
sociable. 

Me siento muy honrado de haber 
ganado el concurso de esta 
revista de nivel nacional. Y 
espero que sigan haciendo 
concursos para incentivar la 
imaginacion de los usuarios. 

Sin querer ser interesado o algo 
as! les cuento que elijo la 
disketera como premio, muchas 
gracias. 

La beca no la voy a poder 
aprovechar dado mi edad y ya 
que no podrla de todas maneras 
estar en Buenos Aires por mucho 
tiempo, ya que serla bastante 
diflcil. 

Victor Villarraza 




Pag. 6 



Nicolas Moyano 


Pedro Azcuf 


Carlos Escobar 


CHESSING 


El programa desarrollado por 
Victor Villaraza esta dividido en 
dos secciones: entretenimiento y 
educativo 

Se trata de un entretenimiento 
que en algo se parece al 
tradicional “estanciero”, pero 
que se desarrolla sobre un 
tablero de ajedrez. Los 
participantes pueden ser dos, y 
gana el que primero llega al 
casillero que se encuentra en el 
extremo opuesto al suyo en el 
tablero. 

Para que el triunfo del ganador 
sea “total”, debera ser 
“coronado”, cualidad que solo 
podra adquirirse si durante el 
transcurso de la competencia 
“compro” por lo menos siete 
“terrenos”. 

En cuanto a la parte grafica, el 
juego consta de dos pantallas. 

La principal nos informa de 
nuestros adelantos y la 
secundaria se utiliza cuando se 
realizan preguntas. 

La pantalla principal contiene el 
menu, el tablero, el tiro de los 
dados y la informacion de ambos 
jugadores. 

Al comenzar el juego, se 
presents el menu, con tres 
posibilidades: continuar el juego, 
instrucciones, y terminar el 
juego. 

Respecto de los dados, el 
programa los arroja al azar, 
imprimiendo el numero que saco 
el jugador y avanza 
automaticamente la respectiva 
cantidad de casillas. Luego, pasa 
al turno del siguiente jugador. 

A cada uno de los participantes, 
por su parte, la pantalla le ofrece 
la siguiente informacion: cuantas 
casillas le faltan para la 
conclusion del juego (en 
principio, son 64), cuanto dinero 


dispone segun los “negocios” 
que haya realizado, y el color del 
casillero en el cual esta ubicado. 
Si e! cuadro es 

negro, estamos en territorio de la 
reina, que nos es favorable. 
Podemos comprarlo por cierta 
cantidad de dinero, vender los 
que hubiesemos comprado con 
anterioridad, o simplemente 
pasar sin hacer nada. Si, en 
cambio, el cuadro es bianco, 
estamos en territorio del rey, que 
nos dificulta el juego. Debemos 
contestar preguntas para poder 
seguir el juego o abonar una 
suma como peaje* 

La situacion se le presenta asi al 
jugador numero 1. En cambio, 
para el numero 2, es’ totalmente 
a la inversa. Su territorio 
favorable es el bianco, mientras 
que en los casilleros negros 
debe contestar las preguntas o 


abonar el peaje. 

El signo de interrogacion, por su 
parte, indica la posibilidad de 
sacar una tarjeta que puede, 
segun el caso, ser de buena o 
mala “suerte”. Esta posibilidad 


esta limitada a los casilleros que 
podemos comprar o vender, o si 
teniamos que responder una 
pregunta y no deseamos hacerlo. 
Las “preguntas” tienen una 
pantalla especial, que aparece 
cuando seleccionamos esa 
posibilidad. Los temas sobre los 
que pueden tratar son 
“capitales” o “sinonimos”. Las 
respuestas deben ser correctas, 
incluso debe cuidarse que no se 
cometan errores al tipear ya que 
no es posible corregir ni 
retroceder. Una ayuda importante 
que nos da el programa es la 
cantidad de letras que debe 
tener la palabra que se nos pide 
Por ejemplo, la pregunta 
“capital de Argentina”, de 12 
espacios,, debera ser respondida 
“Buenos Aires”, (el espacio entre 
palabras se cuenta como un 
caracter). 


En caso que demos la respuesta 
correcta, ganamos dinero. Si, en 
cambio, nuestra contestacion es 
incorrecta, perdemos una 
cantidad de efectivo mayor a la 
que podriamos haber ganado. 




I 


I 



por TELEMATICA S.A. que proveera los siguientes Premios: 



UN PERIFERICO 

(a eleccion entre un monitor, una 
diskettera y una impresora). 



UNA B E C A 

para trabajar en el Departamento 
de Investigation y Desarrollo de 
Telematica S.A. 


O PRE 


I 


UN PERIFERICO 

(a eleccion entre un monitor, una 
diskettera y una impresora). 


I 


ESPECIAL 

Entre los programas recibidos, 
algunos de ellos podran ser editados 
por Prosoft, reconociendose los 
derechos de autor. 


En caso de que el ganador no pueda 
utilizar la beca,sera ofrecida a quien 
obtenga el segundo premio, y si este 
tampoco pudiera aprovecharla se 
otorgara a alguno de los 
participates del certamen que se 
hubiera destacado. 


Se premiara el mejor software de cualquier clase 
(juegos, utilitarios, cientlfic© o comercial). 


BASE ! No solo sera indispensable que el programa enviado en caset 6 
disket funcione correctamente, sino que ademas debe cumplir con ciertas reglas: 


• Programacion estructurada en bloques facilmente diferenciables. 

• Facil seguimiento del mismo y detalle de este como parte de su documentacion. (Diagra- 
ma de bloques con los numeros de linea que los identifiquen). 

• Aclaracion y clara explicacion de los algoritmos utilizados, deben figurar como parte 
de la documentacion. 

• Las variables y/o direcciones de memoria utilizados tambien se deben incluir en esta do- 
cumentation. 

• Listado de nemonicos assembler y la localization en memoria si es que se utiliza este tipo 
de lenguaje. 

• C alidad y originalidad de graficos, sonidos y pantallas de menu. 

Los trabajos deberan enviarse antes del 30 de julio proximo (cierre del 

certamen) a: Parana 720, piso 5°, (1017) Capital Federal. 







Talent 



ARGECINT S.R.L. 

Ventura Bosch 7065 
(1408) Capital 
Te.: 641-0327/4892 
641-3051 

COMPUSHOP S.A. 

Cordoba 1464 
(1055) Capital 
Te.: 41-8730 - 42-9568 
49-21 65 

CP 67 CLUB S.A. 

Florida 683 Loc. 1 8 

(1005) Capital 
Te.: 393-6303 

ARGESIS COMP. S.A. 

Meeks 269 
(1832) Lomas de Zamora 
Te.: 243-1742 

MICROSTAR S.A. 

Callao 462 
(1022) Capital 
Te.: 45-0964/1662 

MINICOMP 

Tinogasta 4044 
(1417) Capital 
Te.: 50-2535/7713 

DIST. CONCALES S.A. 

Tucuman 1458 
(1050) Capital 
Te.: 40-8664/0344 

MICROMATICA S.R.L 

Av. Pueyrredon 1135 

(1118) Capital 
Te. 961-5578 


APLICACIONES PARA 
TOSHIBA 


Para hacer mas espontaneo el uso de la Toshiba HX-20 
y marcando una relacion mas intensa entre el software 
y el hardware la maquina viene acompanada de un inte- 
resante y practico paquete de programas de aplicacio- 
nes multiples. 



Con la adquisicion de una microcompu- 
tadora hogarena comienza una nueva 
etapa en la planificacion familiar, al bus- 
car programas que cubran todas las 
expectativas. 

La busqueda no siempre es facil: reco- 
rrer comercios, copiar todo lo que apa- 
rece sin saber ni siquiera lo que es. 
Los resultados no siempre son los de- 
seados y de a poco se pierden el entu- 
siasmo por el uso de la maquina, o sola- 
mente reinan los juegos para los mas 
chicos. 

Tambien hay que recurrir a manuales, 
algunos no muy claros o escritos en 
otros idiomas, para tratar de descifrar 
su funcionamiento. 

La microcomputadora TOSHIBA 
HX-20 intenta solucionar estos incon- 
venientes al suministrar con la maquina 
seis cassettes con programas de los mas 
variados tipos que cubren las necesida- 
des esenciales. 

No hace falta transformarse en un im- 
provisado analista de sistemas y luego en 
un a^udaz programador con resultados 
no siempre ideates para poder realizar 
la Contabilidad de la casa y la Factura- 
cion del comercio. 

Tambien se podra estudiar o repasar lec- 
ciones de ingles, generar la propia agen- 
da o trabajos personates, sin conocer 
lenguajes ni computacion. Y si el deseo 
es aprender a operar la maquina en una 


forma amena y facil por medio de la ins- 
trucc’ion programada, uno de los casset- 
tes es la solucion. 

Y como este conjunto de programas tie- 
ne un fin netamente familiar y de apli- 
cacion inmediata, el ultimo cassette es 
un juego por si queda algun ratito libre 
en el que no utilice la maquina el jefe 
de la familia. 

CURSO DE BASIC 



TECLA CAPS 


Este interesante programa es fundamen- 
tal para aquel que vaya a dar el puntapie 
inicial (es una forma de decir) en el apa- 
sionante uso de la computadora. 

Sin darnos cuenta podremos recorrer 
los laberintos de la maquina, conocer el 
perfecto uso de su teclas y comandos, 
y entendernos bastante bien en el len- 
guaje Basic. 

El curso esta integrado por 1 6 clases, 
a las cuales podremos repetir tantas ve- 
ces como las necesitemos. Pero de vez 


en cuando se nos tomara un pequeno 
examen para ver si entendernos la expli- 
cacion. 

Leccion Tema 

1 Teclado HX-20 

2 Modo directo 

3 Clases de datos 

4 Modo programa 

5 Comandos para escribir un 
programa 

6 Comandos para ejecutar un 
programa 

7 Escribir en pantalla 

8 Entrada de datos 

9 Toma de decisiones 

10 Bucles 

I I Subrutinas 

I 2 Entradas de datos constantes 
I 3 Grabacion/lectura de 
programas 

14 Modos de pantalla y color 

15 Graficos 

I 6 Generar sonidos 
Despues de asistir a todas las clases nos 
vamos a dar cuenta de que simple que 
es este mundo de la computacion al cual 
ya estaremos incorporados. 

CONTABILIDAD 


1. -ENTRAM DE DATOS 

2. -BUSQUEDA DE DATOS 

3. -ANULACION DATOS 

4. —BALANCE 

5. -PREVISIONES 

6. -DATOS BANCARIOS 

7. -SALDOS BANCARIOS 

8. —OR ABAC I ON FICHERO 

9. -LECTURA FICHEROS 

0- -DEFINICION CONCERTOS 
indi<iue opcion 


Este programa ha sido pensado y deca- 
rrollado para que pueda ser utilizado en 
una funcion tan importante como po- 
der llevar la contabilidad. 

De una manera simple nos mantendre- 
mos al dia en las entradas y salidas de 
un pequeno comercio o en el hogar y 
tendremos todos los movimientos del 
afio acumulados en cassette. 






Tambien se podran relacionar todos los 
movimientos de ia contabilidad con hasta 
9 cuentas bancarias, permitiendo en el 
momento deseado la obtencion del re- 
sumen bancario y el saldo de disponibi- 
lidad a la fecha. 

El programa posibilita manejar hasta 20 
conceptos diferentes de entradas o sa- 
lidas, e introducir hasta 250 
movimientos. 

En todo momento el programa indica 
los pasos a seguir a los que todavia en- 
cuentran la contabilidad como un mis- 
terio dificil de resolver. 

De una manera muy simple y gracias a 
tan avanzada teconologia electronica, 
veremos en que direccion se dirigen 
nuestro marches australes. 

FACTURACION 



La propuesta es muy interesante para 
pequenos comerciantes, a quienes este 
programa brindara optimos resultados. 
Esta dividio en 2 menus principales. El 
primero nos permitira dar altas, bajas, 
modificaciones, consultas, salidas, inven- 
tarios, etcetera. 

El codigo del articulo estara compren- 
dido entre I y 230 con una description 
que abarca 18 posiciones, una cantidad 
de stock actual, una cantidad minima, su 
precio de venta y precio de compra. 
Tambien genera un inventario por pan- 
talla o impresora a eleccion. 

Con el segundo menu se podra optar 
por listar pedidos, contabilidad, emitir 


pedidos, generar presupuestos persona- 
ls o a cl’pntes, etcetera. 

Con el segundo menu se podra optar 
por listar pedidos, contabilidad, emitir 
pedidos, generar presupuestos persona- 
les o a clientes, etc. 

El listado de articulos en stock critico 
marca la cantidad que se halla por deba- 
jo de la cantidad minima especificada. 
La contabilidad permite cuatro opciones 
que son: importe entrada (compras), 
que muestra la cantidad que gastarhos 
en las compras. Muestra tambien el im- 
porte de salidas (ventas). La tercera op- 
cion es resultados. 

Tambien permite generar un balance to- 
tal que es producto de listar los 
acumuladores. 

BATALLA DE TANQUES 

Es un Juego de habilidad guerrera, don- 
de podremos mostrar la habilidad con 
las teclas y la rapidez visual. 
Deberemos esquivar campos con minas 
en un tipico escenario de hostilidades 
donde nuestro temple y sangre fria sal- 
dran vencedores de esta tan ardorosa 
confrontacion. 

La tarea no sera facil, pero por lo me- 
nos no sera riesgosa como lo es la gue- 
rra real. 

BASE DE DATOS 



Podremos con muy poco esfuerzo te- 
ner nuestra propia base de datos, guar- 
dando en ella direcciones, nombres, fe- 
chas, para el uso que mas nos interese. 


Induso podemos participar en el diseno, 
dandole asi caracteristicas personales. 
Con este programa la computadora se- 
ra un aliado imprescindible para nuestra 
a veces fragil memoria. 

Y asi en un cassette tendremos una gran , 
agenda sin preocuparnos demasiado por 
su extension, y la actualization de la mis- 
ma sera rapida. 


INGLES I 



Es una interesante forma de aprender 
a repasar la lengua Sheaskespeareana, pe- 
ro siempre con un tratamiento ameno. 
Recorreremos una pequena granja con 
las distintas facetas de su personaje cen- 
tral, un agricultor. Completaremos f ra- 
ses, dandonos tres oportunidades, y si 
ninguna es la buena el programa se en- 
cargara de compietarlo en forma 
correcta. 

El paseo es interesante, y poco cansa- 
dor. Sin darnos cuenta estaremos 
aprendiendo. 

Posee un marcado mensaje ecologista 
que nos demuestra que, con el tiempo, 
la quietud y armonia del campo se trans- 
.forma y nos hallamos en ruidosas ciuda- 
des. 

Al final nos calificara diciendo como fue 
nuestro desempeno en las clases y, si es- 
tuvimos flojitos, despues de un recreo 
podemos reiniciar el estudio probable- 
mente con mas exito. 


IFTHCRC3BVTE 


AH p 0 N DISK£[IE 


USTED SABE CUANTOS 
TSTULOS TIENE MICROBYTE 
PARA TODAS LAS MSX? 

(TODOS EN CASSETTE} 

• JUEGOS 9 UTILITARIOS P ~~ CON MANUALES 


ULTIMOS TITULOS 


Moon Patrol 

Harvey Smith Show jumper 
Boxing Konami 
Knight Lore 
Valkyr 


MONTEVIDEO 252 (1019) Cap. Te.: 38-0331 


VENTAS AL POR MAYOR Y MENOR 
ENVIOS AL INTERIOR - SOLICITE CATALOGO 





I 

I 



UN ESCENOGRAFO 
LA COMPUTADORA 



traves de este programa po- 
dremos observar una simula- 
cion de teatro en computa- 


lora. 

’asan diferentes escenas, las cuales no 
;iguen un argumento, pero son atracti- 
'as desde el punto de vista estetico de 
as figuras. 

I .o mas destacable de este software son 
os efectos sonoros. 

:n este proyecto de obra de teatro, es- 
:an inlcuidas varias piezas musicales. To- 
las siguen una linea de melodia sinfoni- 
:a, como interludio. 

">e definieron seis sprites, que formaran 
os personajes de esta obra. 


VARIABLES 

IMPORTANTES: 

Al$, A2$, A3$, A4$, AS$, 
66$, A7$, A8$, A9$, Bl$, 
82$, B3$, B4$: contienen parte de 
a melodia. 

XA, YA: coordenadas para los sprites. 


ESTRUCTURA 
DEL PROGRAMA: 


10-90: presentacion 
100-170: inicializacion de sprites 
1 80-290: inicializacion de variables 
300-4460: diferentes musicas 

4470-4620: efecto I 
4630-4850: efecto 2 



4860-4980: efecto 3 
4990-5060: rutina de movimiento de 
los ciervos 

5070-5090: datos para el sprite 0 
5100-5120: datos para el sprite I 


5 1 30-5 I 50: datos para definir el spri- 
te 2 

5160-5180: datos para el sprite 3 
5190-5210: datos del sprite 4 
5220-5240: datos del sprite 5 


10 COLOR 15, 1, l: SCREEN 2,2 
20 FOR P=2 TO 20 STEP 2 
30 LINE <P,P>-< (255-P) , <*91-P> ) , 
P/2, B 
40 NEXT P 
50 OPEN "GRP 5 "AS#1 
60 LINE (75, 80) — < 175, 105) , 1 , BF 
70 PSET (85, 90) , i:PRINT#l, "TEATRO 
MSX" 

80 FOR P=0 TO 2000: NEXT p 
90 LINE (75, 80) — ( 175, 120) , 1 , BF 
100 RESTORE 5070 
110 FOR 1=0 TO 5 
120 S*="" 

130 FOR J=1 TO 32 

140 READ R:S*=S*+CHR*<R> 

150 NEXT J 

160 SPRITE* (H=S* 

170 NEXT I 

180 7 INICIALIZACION DE VARIABLE 
S 

190 DIM XA (5) , YA(5) 

200 XA(0)=50= XA(1)=100 
210 YA<0)=50: YA<1>=100 
220 X A ( 2 > =60 : X A ( 3 ) =30 
230 XA (4) =30: XA (5) =10 
240 Al*=" o3ar 16" 

250 A6*=" o3ar 16ar 16ar 16a" : A7*=" o 
5br 16br 16br 16br 16br 16br 16br 16br 16 
" : A8*="o5dr 16dr 16drl6drl6dr 16drl6 
dr 16dr 16": A9*=" o4dr!6drl6drl6d" 
260 Bl*=" o5f+rl6f+rl6f+rl6f+rl6" 


:B2*="o5drl6drl6drl6drl6":B3*="o5 
frl6frl6frl6frl6" : B4*="o5e-rl6e— r 
16e-r 16e-r 16" 

270 LINE (0,0>- (255, 191) , 1,BF 
280 Z=0 

290 ON INTERVAL=12 GOSUB 4470= IN 

TERVAL ON 

300 7 comienzo 

310 PLAY" t501 16" , " t501 16" , " t501 1 
6 " 

320 PLAY"v8o5f 8 .r 16f8g64f 32 . f8ed 
8", u v8o4a8r8ar 16a8 .gf8", M v8o3d4o4 
d8o3d4 • " 

330 PLAY" o5c+8 -rl6v!2c+r 16c+4r8" 

, "r4vlOo4gr 16g4r8" , " o4e4vl0o3er 16 
e4r8" 

340 PLAY " v8g8 . r 1 6g 8a64g 32 . g8 f e 8 " 

, M v8o4b-8r8b-16rl6b~8.ag8", "r2r4" 
350 PLAY"o5d8.rl6vl2drl6d4r8", "o 
4f4vl0drl6d4r8", "r4vlOo3f+rl6f+4r 
8 " 

360 PLAY" Vl0o6c4d32c32o5b32o6c32 
dco5b-agf+" , M r2r4", "r2r4" 

370 PLAY"o5g4vl2gr 16g4r8" , " r4vl0 
drl6d4r8" , "r4vlOo3b~r 16b-4r8" 

380 FOR 1=1 TO 2: PLAY" vl0o5g+4 . " 

, "Vl0o4d64e64f32f8e 16d8" , " v8o3b— 4 
. " : NEXT I 

390 PLAY"o5a4.r4r8", u o5c+4.r4r8" 
,A1* 

400 PLAY"vlO" , " v!2" , "vlO" 


410 PLAY" o5b— ab-ab-8r8a8e8" , " o5e 

4 . r8e8c+S" , A^* 

420 PLAY"o5ag+ag-»-a8r8dr 16dr 16", " 
o5d4 . r8o4ar 16ar 16" , A2* 

430 PLAY" o4b-ab-ab—8r8o5c+r 16c+r 
16", "o5g4 .r8erl6erl6" , A2* 

440 PLAY" o4ag+ag+a8r8ar 16ar 16" , " 
o5f 4 . r8dr 16dr 16" , A2* 

450 PLAY"vl2o5f r 16f r 16f r 16f8vl3g 
fed", "vl2o5drl6drl6drl6d8r4" , "vlO 
03b-rl6b-rl6b-rl6b-4." 

460 FOR 1 = 1 TO 2: PLAY" vl2o5f r 16f 
rl6f rl6f8vl3gf ed" , u vl2r8o5dr 16dr 1 
6d8r4" , " r<8vlOo3b-r 16b-r 16b-4 . " : NE 
XT I 

470 PLAY"vl2", "vlO", "v9" 

480 PLAY"o5c+4 .a4 . " , "o4a4 .o5e4 . " 
,A1* 

490 PLAY"vl 3 o 5 b- 4 . 06 c+ 4 .", "vllo 5 
f 4 .g4 . " , Al* 

500 PLAY"vl4o6d4.d4vl3c8", "vl2o5 
a4.a4vllg8", Al* 

510 PLAY" vl2o5b— 4r8b— 8a8g+8" , "vl 
Oo5f4r8f r 16f r 16f r 16" , Al* 

520 PLAY" o5a4 . r4r8" , M o5e4.r4r8", 

Al* 

530 PLAY " v 1 1 " , " v9 " , " v6 " 

540 PLAY"o5b~4.g+4.", "o5f4r8f4r8 
", Al* 

550 PLAY" vl0o5a4 . r4v9a8" , "v8o5e4 
.r4v7e8", Al* 





560 PLAY " o5g+4 . b4 • " , "o5f 4 -d4 . ", A 
1* 

570 PLAY" v8o5a4 - r4r8" , " v6o5c+4 . r 
4r8" , Al$ 

580 PLAY“o4g+64a64b64a4.a4.", n r6 
4r32o3a4 .a4 . " 

590 IF PLAY (0) =0 THEN 610 
600 GOTO 590 

610 INTERVAL OFF:COLOR , ,7 
620 FOR P=0 TO 1:PUT SPRITE P, (O 
,209): NEXT P 
630 7 

640 L I NE ( 0 , O ) — ( 256 , 90 ) , 4 , BF 
650 LINE (0,90) -(256, 192) ,3, BF 
660 SN=0 
670 7 

680 ON INTERVAL=15 GOSUB 4630: IN 
TERVAL ON 
690 7 mOs i ca 

700 PLAY" t96" , " t96" , " t96" 

710 1=0: GOSUB 3970 

720 IF PLAY (O) =0 THEN 740 

730 GOTO 720 

740 INTERVAL OFF 

750 FOR P=2 TO 3 

760 PUT SPRITE P, (-20,-20) 

770 NEXT P 

780 LINE (0,0) -(256, 192) ,4, BF 
790 ON INTERVftL=16 GOSUB 4860: IN 
TERVAL ON 
800 7 

810 PLAY" t901 b", " t901b" , “t901b": 
J=0 

820 J=J+1 : PLAY" vl3o6c+4 .o5bar bar 
b", "vlOo5c+ec+ec+ec+" , "v8o3al" 
830 PLAY"o5brl6r32o6c+32o5brl6r3 
2o6c+32o5br8r4" , " o5dg+dg+dg+dg+" , 
"o3al " 

840 PLAY"o6c+4r8c+dc+o5bo6c+" , "o 
5egegegeg", "o3al" 

850 PLAY"Q6dr8dr8dr8r4 n , "o5f+af+ 
af+af+a" , "o3al " 

860 PLAY"vllo5b4.o6c+16o5bl6ag+f 
+e" , " v8o5g+2r2" , " v8o5d2r2" 

870 IF J=2 THEN 940 
880 FOR K=1 TO 2 

890 PLAY" o5ao6c+16o5b 16" , "o5er8" 

, “o5c+rS" 

900 PLAY"o5bl6al6g+16al6" , "r4“, “ 
r4" 


910 NiXT K 

920 PLAY"o5vl2f+g+aa+bf+o6do5b" , 
"o4d2r2", "r2r2;* 

930 PLAY"o5a4 .bg+r4" , "o5c+ec+eo4 
bo5ede" , u o4e2r2" : GOTO 820 
940 PLAY" o5al6r 16a 16r 16o6c+edc+o 
5ba+", "o5e4r4r2", "o5c+4r4r2" 

950 PLAY"o5br8br8br8ar8" , " r4o4br 
8br8br8", " r4o4d+r8d+r8d+r8" 

960 PLAY"116", "18", "18": J=0 
970 PLAY" vl lo5g+ed+ef +ed+e" , "vll 
o4b4r4", u vllo4e4r4" 

980 J=«J+1 s PLAY A5$, "o4bo5c+do4b" 
, "046+ABG+" 

990 PLAY" r 161 32er32er32e ", "o5c+4 
", "o4a4" 

1000 PLAY" er32er32er32el 16", "r8c 
+", "R4" 

1010 PLAY A5*, "o5dc+o4ba", "o4bag 
+ f" 

1020 IF J=2 THEN 1040 

1030 PLAY"rl6o5ed+ef+ed+e", "o4g+ 

4r4" , " o4e4r4" : GOTO 980 

1040 PLAY"o5e8r8g+8r8e8r8r4", M a4 

br8br8br8” , "o4g+r8g+r8g+r8" 

1050 IF PLAY (O) =0 THEN 1070 

1060 GOTO 1050 

1070 INTERVAL OFF 

1080 FOR P=4 TO 5 

1090 PUT SPRITE P, (-20,-20) 

1100 NEXT P 

1110 L I NE ( 0 , 0 ) — ( 256 , 1 92 ) , 4 , BF 
1120 L I NE ( 0 , 90 > - ( 256 , 192) , 3 , BF 
1130 ON INTERVALS 6 GOSUB 4630:1 
NTERVAL ON 
]; 140 7 

1150 PLAY" t96I8" , " t961 3" , " 1961 16 
v7": J=0 

1160 PLAY " r 2 " , " r 2 " , A6$ 

1170 PLAY" r4vlOo6c+4" , " r4vlOo5e4 
",A6* 

1180 FOR K=1 TO 2 

1190 PLAY" o6c2" , " o5d+2" , A6$ 

1200 PLAY"o6c+r8c+r8", "o5er8er8" 
, A6* 

1210 NEXT K 

1220 PLAY" vlOo6e2" , u vlOo5g2" , A6$ 
1230 PLAY" o6dr8dr8" , "o5f+r8f+r8" 
,A6* 

1240 PLAY" vl lo5bo6f+ed" , "vllo5g+ 


r8r4" , " o3a2v8" 

1 250 PLAY " o6c+4v 1 1 o5c+4 " , " o5a4v 1 
lo4e4", A6* 

1260 FOR K=1 TO 2 

1270 PLAY"o5c2", "o4d+2", A6* 

1280 PLAY" o5c+r8c+r8" , "o4er8er8" 
,A6* 

1290 NEXT K 

1300 PLAY" vl 1 o5e2" , " vl 1 o4g2" , A6* 
1310 PLAY"o5dr8dr8", "o4f+r8f+r8" 
,A6* 

1320 PLAY" vl2o4bo5f+ed" , " vl2o4g+ 
r8r4", "o3a2" 

1330 PLAY " vl3o5c-*T 16er 16er 16erl6 
", "o4ar8r4", "o3a4r4" 

1340 J=J+l:K=0 

1350 K=K+ 1 : PLAY" r 16o5ed+e f +ed+e " 
, " vlOo5dr8r4" , " vl0a4br8r4" 

1360 PLAY"o5g+ebg+e8r8" , "r4r8o5d 
" , "r4r8o4b" 

1370 PLAY"rl6o5ed+ef+ed+e", "o5c+ 
4r4", n o4a4r4" 

1380 IF K=2 THEN 1400 

1390 PLAY" o5aed6c+o5ae8r8" , "r4r8 

o5c+“ , "r4r8o4a+“ : GOTO 1350 

1400 PLAY"o5aeo6c+o5aebr8", "r2", 

"r2" 

1410 PLAY"r418vl0o5a+rSa+r8a+r8" 
, "v8o4f+o5ec+ec +ec+e", H r2r2v8" 
1420 PLAY"o5bo6c+dc+ed+do5b" , "o5 
f +4r4r2" , "o5d4r4r2" 

1430 PLAY" o6c+8 . o5bl6a2g+4 " , " q5c 
+ ec+ec+ede", "o3a2e4r4" 

1440 IF J=2 THEN 1470 

1450 PLAY"vl2116o5ac+def+ef+g+", 

" 050+ 1 6R 1 6R8R4 " , " 03 A4R4 " 

1460 PLAY"o5abo6c+o5bag+f+e", "r2 

" , " r2" : GOTO 1340 

1470 PLAY"14", "14", "1 16v9" 

1480 FOR K=1 TO 2 

1490 PLAY" vl2o5ar4" , " v!2o5c+r4" , 

A6$ 

1500 PLAY" r4o5vl la" , "r4o5vl 1 f+“ , 
A6* 

1510 PLAY" o5g+f +” , " o5ed" , A6$ 

1520 PLAY"o5ed+", "o5c+c",A6* 

1530 PLAY" o5e2", " o5c+2", A6$ 

1540 PLAY"o5c+r8I8g" , "a4ar818o5c 
+",A6* 

1550 PLAY" v!2o5f +f+16el6f+a" , "vl 


PATASSETTE 

LA RESPUESTA 
TECN0L06ICA DE 



MITSAO 

COMPUTER 


DATASSETTE MITSAO Mod. MC 100 D 

compatible con COMMODORE 64 y 128. 

AHORA PRESENTAMOS el DATASSETTE 
MITSAO Mod. MC 300 D compatible con 
TALENT MSX, SINCLAIR Spectrum 
SPECTRAVIDEO MSX y otras. 
y el Mod. MC 500 D compatible con ATARI. 


Fabrica: 


Alvarado 1163-1167 
Capital Federal 28-8084/8247 21-7131 


Distribuye: 

DISPLAY 

La Pampa 2326 Of. 304" 
Capital Federal te 78 1-471 4 


2o5dr8dr8",A6* 

1560 PLAY"vl3o5g+ebg+14", "vl3a4b 
r8br814",A6* 

1570 NEXT K 

1580 FOR K=1 TO 2 

1 590 PLAY " 1 8v 1 4o5a4v 1 5o6c+4 . v 1 2o 

5bag+", ,, 18vl4o5er8vl5e4 -vl2dc+e" , 

" vl2o3a8r8a4r8r4" 

1600 PLAY"o5f +edc+vl5f+4g+4" , "o5 
dc+o4bavl5o5d4o4b4" , " r2o3d4e4 n 
1610 NEXT K 

1620 PLAY “11 6 v8 " * 11 1 16v8", "v9" 

1630 FOR K=1 TO 2 

1640 FOR M=1 TO 2s PLAY"r8o5ar 16a 
4", "r8o5c+r 16c+4", "o3a4 .o4e8" s NEX 
T M 

1650 FOR M=1 TO 2s PLAY" r8o5br 16b 
4", ,, r8o5drl6d4", "o3a4 .o4g+8" s NEXT 
M 

1660 NEXT K 
1670 FOR K=1 TO 2 

1680 PLAY"r8o5ar 16a4" , "r8o5c+rl6 
c+4" , "o3a4.o4e8" 

1690 PLAY ,, r8Q5brl6b4" , n r8o5drl6d 
4", "o3a4.o4g+8" 

1700 NEXT K 

1710 PLAY"18r4vl3o5ar8ar8o6c+r8" 

, "18r4vl3o5er8er8er8" 7 "18o3ar8vl3 
ar8ar8ar8" 

1720 PLAY ,, o5a2r2", ,, o5e2r2 , S "o3a2 
r2" 

1730 IF PLAY ( 0 ) =0 THEN 1750 

1740 GOTO 1730 

1750 INTERVAL STOP 

1760 LINE (0,0) -(256, 90) 7 4, BF 

1770 LINE (0, 100) -(256, 192) , 12, BF 

1780 INTERVAL ON 

1790 ’ He********************** 

1800 PLAY"14 M , "14", "14" 

1810 FOR K=1 TO 4: PLAY" vlOo5a" , " 
vl0o5e-", "vi0o4f " s NEXT K 
1820 PLAY " o 5a2 r 2 " ? " o5e-2r2" , " o4f 
2r2" 

1830 FOR K=1 TO 4s PLAY" o5b-" , " o5 
f", "o4d-"sNEXT K 

1840 PLAY"o5b-2r2 H 7 "o5f2r M , "o4d- 
2r2" 

1850 FOR K=1 TO 4: PLAY" o6c" , " o5g 
"o4e-"sNEXT K 

1860 PLAY"o6c2r2" , " o5g-2r" , "o4e- 
2r2" 

1870 PLAY " 1 1 6 " , " 1 8 " , " 1 8 " 

1880 FOR K=1 TO 2 

.1890. FOR M=l„TQ_Z 

1900 PLAY" vl5o6d-2 «d-8" , "V13R805 
FG— F6-FG-F" , " V13R804A-B-A-B-A-B-A 

— i» 

1910 NEXT M 

1920 PLAY"vl3o5e-g-o6co5g-e-g-o6 
co5g-" , "r4D4a-4" , "r2" 

1930 PLAY"o5e-g“o6co5g-e-g-o6co5 
g— “ , " o4a4a-4" , " r2" 

1940 PLAY"o5e-g-o6co5g-e-g-o6co5 
g-e-g-o6co5g-e-g-o6co5g-" , " o4a4a- 
4a4a— " , " r 1 " 

1950 NEXT K 

1960 FOR K=1 TO 16 

1970 PLAY" vl5o6d— r 16" , "v!3o5f 16r 

16" , " vl3o5d— 16r 16" 

1980 NEXT K 

1990 PLAY " 1 1 6 " , " 1 1 6 " , " 1 8 " 

2000 PLAY A7*,A8*, " o4g+2g+4 .g+16 

it 

2010 PLAY A7*, A8*, " o4g+2g+4 .g+16 

II 

2020 PLAY A7*, A8*, " r4o4e4g+4e4" 

2030 FOR K=1 TO 2 

2040 FOR K=1 TO 2 

2050 PLAY" o4ao5c+ea" , "r4" , "r 4" 


2060 FOR M=1 TO 3 

2070 PLAY"o4ao5c+ea" , "18o3ar8", " 

r4" 

2080 NEXT M 

2090 NEXT K 

2100 FOR K=1 TO 2 

2110 PLAY"o4go5c+eb-", "r4", "r4" 

2120 FOR M=1 TO 3 

2130 PLAY"o4go5c+eb-" , "o3ar8", "r 

4" 

2140 NEXT M 

2150 NEXT K 

2160 FOR K=1 TO 2 

2170 PLAY"o4f aoSda" , "r4% "r4" 

2180 FOR M=1 TO 3 

2190 PLAY"o4fao5da" , " o3ar8" , "r4" 

2200 NEXT M 

2210 NEXT K 

2220 FOR K=1 TO 2 

2230 PLAY"o4eb-o5c+g" , "r4"7 "r4" 

2240 FOR M=1 TO 3 

2250 PLAY"o4eb-o5c+g", "o3ar8", "r 

4" 

2260 NEXT M 
2270 NEXT K 

2280 PLAY"18", "18", "18" 

2290 FOR K=1 TO 2 
2300 PLAY"r8f 16r 16f4r8f 16r 16f4" , 
n r8o5dl6rl6d4r8dl6rl6d4", "o4d4.e8 
f 4 -g" 

2310 PLAY ,, r8o5fr8fr8fr8fv8", "r8o 
5dr8dr8dr8dv8" , "o4a4b-4g+4a4vl0" 
2320 NEXT K 

2330 PLAY" r8f 16rl6f 4r8vl0f 16rl6f 
4", "r8o5dl6rl6d4r8vl0dl6rl6d4", "o 
4b-4.vl4f8d4.f " 

2340 PLAY"r8o5fr8fr8fr8f ", "r8o5d 
r8dr3dr8d", "o3b-4o4d4f 4b-4" 

2350 PLAY " v8r8f 16rl6f 4r8vl0f 16r 1 
6f4" , "V8r8o5dl6rl6d4r8vl0dl6rl6d4 
", " o4a4 «vl0f8d4 . f " 

2360 PLAY"r8o5fr8fr8fr8fv6", "r8o 
5dr8dr8dr8dv6" , M o3a4o4d4f 4a4" 

2370 PLAY"vl0r8f 16rl6f 4r8vl0f 16r 
16 f 4" , n vl0r8o5dl6rl6d4r8vl0dl6rl6 
d4" , "vl4o4g+4 .v!2ab-4 .ab" 

2380 PLAY"vllr8o5fr8fr8fr8f ", "vl 
lr8o5dr8dr8dr8d " , "vl4o4g+4a4b-4g+ 

2390 PLAY"18vi3o5e4r4" , "18vl2o5c 
4r4" , "1 16vl0o4arl6o3ar 16ar 16a" s J= 
0 

2400 J=J+1 s PLAY " r4 o5#r8" , « Lr4n5? r 
S",A6* 

2410 PLAY"o5br8br8", "o5g+r8g+r8" 

, A6* 

2420 PLAY"o6c+r8c+r8", "o5gr8gr8" 

iA6$ 

2430 PLAY" o6dr8dr8" , " o5ar8ar8" , A 

6* 

2440 PLAY“o6d4r4" , "o5a4r4" , A6* 
2450 PLAY"o5b2", "o5f2", A6* 

2460 PLAY" o5g+2" , " o5f2" , A6* 

2470 IF J=2 THEN 2490 

2480 PLAY" o3a2", "o5e2",A6*s GOTO 

2400 

2490 PLAY"1 16o5arl6o4ag+arl6ag+" 

, " 1 16o5c+8r8r4" , A6* 

2500 PLAY" o4a4r4" , " r2" ,A6* 

2510 PLAY " v 1 1 " , " v 1 0 " , " v8 " 

2520 PLAY"o4gr 16gf+gr 16gf+" , "r2" 
,A6$ 

2530 PLAY"o4g4r4" , M r2" , A6* 

2540 PLAY " v 1 0 " , " v8 " , " v6 " 

2550 PLAY"o4f+rl6f+f f+rl6f+f+", " 
04arl6arl6arl6arl6" , A6* 

2560 PLAY"o4f-*-4r4" , "o4a4r4" , A6* 
2570 PLAY " v9 " , " v7 " , " v6 " 

2580 PLAY"o4erl6ed+erl6ed+", "o4g 
r 1 6g r 1 6g r 1 6q r 1 6 " ,A6$ 

2590 PLAY"o4e4r4"7 "o4g4r4 M 7 A6» 
2600 GOSUB 3970 
2610 9 

2620 PLAY"18vl 1 " , "18vll", "116v8" 
2630 PLAY"r2"7 "r2",A9* 

2640 PLAY"r4o5a4", "r4o5f -4-4" , A9* 

2650 FOR K=i TO 2 

2660 PLAY"o5g+2", "o5f2",A9* 

2670 PLAY"o5ar8ar8" , "o5f+r8f+r8" 
,A9$ 

2680 NEXT K 

2690 PLAY" o6c2" , " o5a2" , A9* 


2700 PLAY n o5br8bo6d" , "o5gr8gr8" , 
A9* 

2710 PLAY"o 6 c+edc+", "r 2 ", "o 3 a 2 vl 
0 " 

2720 PLAY"o6d4vl2o4a4" , "o5f+4vl2 
o4f+4", A3* 

2730 FOR K=1 TO 2 

2740 PLAY"o4g+2" , "o4f2" , A3* 

2750 PLAY " 04 AR8 AR8 " , " 04F+R8F+R8 " 

, A3* 

2760 NEXT K 

2770 PLAY"o5c2", "o4a2",A3* 

2780 PLAY"o4br8bo5d", "o 4 gr 8 gr 8"7 
A3* 

2790 PLAY" vl2o5c+age" , " v!2o4g2" , 
"vl2o3a2" 

2800 PLAY"o5d4r4" , " o4f+4r4", "o3d 
4r4"s J=0 

2810 J=J+lsPLAY"l 16", "1 16", "1 16" 
2820 FOR K=1 TO 2 
2830 PLAY"vl3o5eag+abag+a" , "vlOo 
5c+8r8r4", "r2" 

2840 PLAY"o 6 c+Q 5 ag+agaea ,, 7 "r4o5c 
+rl 6 c+rl 6 ", "r 2 " 

2850 PLAY"o5f+ag+abag+a", "o5d8r8 
r4", "r2" 

2860 PLAY"o6do5ag+af+af+a" , " r4o5 
dr 16dr 16" , "r2" 

2870 NEXT K 

2880 IF J=2 THEN 2900 

2890 FOR M*=l TO 16s PLAY"vl3o5f +" 

, "vl3o5d+", "vl3o3b"sNEXT MsGOTO 2 
910 

2900 FOR K=1 TO 4 s PLAY"o3bo4ao5d 
+ f+", "r4", "r4":NEXT K 
2910 PLAY" v!3o5ed+f +eg f +ag" , "vlO 
o4b2" , "V1004G2" 

2920 PLAY"o5e8o6c+o5ba+bge" , "o4b 

. 

2930 PLAY" vl2o5f + 8 «ed2c+4" , "vl2o 
4a8 „gr2o4g4" , "vl018r8o3ao4f+o3ao4 
eo3ar8a " 

2940 IF J=2 THEN 2960 
2950 PLAY " o5d4a8bag rl 6 gr! 6 f+rl 6 f 
*r 16" , "o4f+4a5f+r 16f+r 16arl6erl6d 
rl 6 drl 6 ", "o3d4r4r2" s GOTO 2810 
2960 PLAY " 1 4 " , " 1 4 " , " 1 1 6 v 1 0 " s J=0 
2970 PLAY"o5dr4", "o4f+r4",A3* 

2980 J= J+ 1 s PLAY " r 4v 1 1 o5d " , " r 4v 1 1 
o4b" , A3* 

2990 PLAY " o5c+o4b " , " o4ag " , A3* 

3000 PLAY"o4ag+", "o 4 f+f" 7 A 3 * 

3010 PLAY"o4ar4","o4f+r4",A3* 

3020 PLAY" vl3o5c2" , " vl3o4a2" , A3* 
3030 PLAY" vl2o4br4" , " vl2o4gr4" , A 
3* 

3040 PLAY" vl3o5g2" 7 " vl3o5c+2“ , A3 
* 

3050 IF J=2 THEN 3070 

3060 PLAY"vl2o5f+r4", "vl2o5dr4", 

A3* s GOTO 2980 

3070 PLAY" 18", "18", "L4" 

3080 PLAY"vl4o5f+4a4.g+aa+", "vl3 
o5d4f+4.f f+16rl6f+", "vl Io3do4do3d 
r4" 

3090 PLAY" o5ba+ba+b4o6c+4" , "o5gf 
+gf+gr 8 gr 8 ", "o4g2r4o3a" 

3100 PLAY"o6d4o5a4-g+aa+", "o5f+r 
8f+4 . f f+16r 16f +" , " o3do4do3dr4" 
3110 PLAY"o5ba+ba+b4o6c+4 . " , "o5g 
f +g f +gr8g4 . " , " o4g2r4o3a . " 

3120 IF PLAY (0) =0 THEN 3140 

3130 GOTO 3120 

3140 INTERVAL OFF 

3150 L I NE ( 0 , O ) — ( 256 , 1 92 > , 4 , BF 

3160 SN=SN+1 

3170 ON INTERVAL=17 GOSUB 4630s I 
NTERVAL ON 

3180 PLAY"rl", "rl", "rl" 

3190 9 JleJic********************* 

3200 FOR K-l TO 2 
3210 FOR M=i TO 2 

3220 PLAY" vl0r8r 16o5d32r32d4" , "v 

10r8rl6o4f+32r32f+4"> "v8o3d4.a8" 

3230 NEXT M 

3240 FOR M=1 TO 2 

3250 PLAY" r8r 16o5e32r32e4" , " r8rl 

6o4g32r32g4", " o3d4 . o4c+8" 

3260 NEXT M 
3270 NEXT K 

3280 PLAY " 1 1 6 " , " 1 1 6 " , " 1 8 " : J=0 



3290 PLAY"vl3r4o5f+rl6f+rl6", "vl 
3r4o5dr 16dr 16" , " vl5o3d4o4dc+" 

3300 J=J+1 

3310 FOR K=1 TO 2 

3320 PLAY B1$,B2$, "o3ba+ba+" 

3330 PLAY B1$?B2$» "03BF+04DC+" 
3340 NEXT K 

3350 PLAY B1*,B2*, "o3baqf+" 

3360 FOR K=1 TO 4 sPLAY "o5erl6", 

"o4brl6", "o3gl6rl6" : NEXT K 

3370 IF J=2 THEN 3400 

3380 FOR K=1 TO 4: PLAY" o5erl6" , " 

o5c+rl6", " o3al6r 16" : NEXT K 

3390 PLAY Bl$i B2$, ” o3d4o4dc+" s GO 

TO 3300 

3400 FOR K=1 TO 4: PLAY" o5gr 16" , " 
o5c+r!6", " o3al6r 16" : NEXT K 
3410 PLAY"vllr8o5frl6frl6frl6", " 
vl lr8o5dr 16drl6drl6" , " vl2o3b— 4r4" 
3420 PLAY B3*,B2*, "r4o3b-4": J=0 
3430 J=J+1:PLAYB3*,B4$, "o3a4o4c4 

•I 

3440 PLAY B3*,B4$, "o3a4f4" 

3450 IF J=2 THEN 3480 
3460 PLAY B3*,B2*, "o3b-4r4" 

3470 PLAY 
OTO 3430 

3480 PLAY B3*,B2*, "vl2o3b-2" 

3490 PLAY B3*,B2S, "r4o3a4" 

3500 PLAY"vl2o5br 16brl6br 16brl6" 

, " vl2o5f rl6f rl6f r 16f r 16" , " vl3o3g+ 
r8g+r8" 

3510 PLAY" vl3o5br 16b rl6v 14b rl6br 
16", "vl3o5fri6frl6vl4frl6frl6", "v 
14o3g+r8g+r8" 

3520 FOR K=1 TO 4: PLAY" vl5o4ao5d 

f +a" , "vl5o3a4" , "r4" : NEXT K 

3530 FOR K=1 TO 4: PLAY" o4ao5ego6 

c+", "o3a4", "r4":NEXT K 

3540 PLAY"vl3r8o6drl6drl6drl6", " 

vl3r8o5f+r 16f +r 16f+r 16" , "14vl3o4d 

r4" 

3550 PLAY"r8o6d8r8d8", "r8o5t+8r8 
f-»-8" , " o5dvl2o4a+" 

3560 PLAY"r8o6drl6dr 16drl6" , "r8o 
5f+rl6f+ri6f+rl6", "o4br4" 

3570 PLAY"r8o6d8r8d8", "r8o5f+8r8 
f+8" , "o4ba" 

3580 PLAY"r8o6drl6dr 16drl6" , "r8o 
5erl6erl6erl6" 7 "o4gr4" 

3590 PLAY" r8o6d8r8d8" 7 " r8o5e8r8f 
8", "o4gg+" 

3600 PLAY"r8o6drl6drl6drl6", "r8o 
5f+rl6f+r 16f+rl6" , "o4a2" 

3610 PLAY"r8o6c+r 16c+r 16c+r 16" , " 
r8o5grl6grl6grl6" 7 "o3a2" 

3620 IF PLAY (0) =0 THEN 3640 

3630 GOTO 3620 

3640 INTERVAL OFF: COLOR , ,1 

3650 FOR P=2 TO 3 

3660 PUT SPRITE P, (0,209) 

3670 NEXT P 

3680 LINE (0,0) -(256, 192) , 1,BF 

3690 FOR P=1 TO 10 

3700 L I NE (0,1 5*P ) -STEP ( 256 , 2* ( P— 

1) ) ,9,BF 

3710 NEXT P 

3720 PLAY"rl", "rl", "rl" 

3730 XA (4) =30: XA (5) =10 

3740 ON INTERVALS 5 GOSUB 4990:1 

NTERVAL ON 

3750 FOR P=1 TO 10 

3760 PLAY" t901 4vl2" , " t90v!21 4" , " 

t90vl21 4" 

3770 FOR K=1 TO 2 
3780 FOR fi=l TO 2 

3790 PLAY" r8r 16o5d32r32d4" , "r8rl 
6o4f+32r32f+4", n o3d4.a8" 

3800 NEXT M 
3810 FOR M=1 TO 2 

3820 PLAY" r8r 16o5e32r32e4" , "r8rl 
6o4g32r32g4" , " o3d4 . o4c+8" 

3830 NEXT M 
3840 NEXT K 

3850 PLAY"vl3", "vl3", "vl3" 

3860 FOR K=1 TO 2 

3870 PLAY" r8r 16o5d32r32d4" , " r8rl 

6o4f+32r32f+4", M o3d4.a8" 

3880 PLAY"r8r 16o5e32r32e4vl4" , "r 
8rl6o4g32r32g4vl4", "o3d4.o4c+8vl4 

3890 NEXT K 

3900 PLAY"r4o5d8r8d8r8d8r8", "r4o 
4f+8r8f+8r8f+8r8" , " vl5o3do4do3af+ 

3910 PLAY" v!5o5dr4o6dr4" , "vl4o4f 


+r4o5f+r8", "o3dr4dr4" 

3920 PLAY" t60s0m48000o6d 1 r2" , "16 
0s0m48000o5 f + 1 r 2 " , " t 60s0m48000o3d 
1 r 2 " 

3930 IF PLAY (0) =0 THEN 3950 
3940 GOTO 3930 
3950 END 

3960 ’ 

3970 7 ************************ 
3980 1=1+1 :J=0 
3990 J=J+1 

4000 FOR K=1 TO 4: PLAY" vl5o4drl6 
dc+", "r4", "vl3o3d4" : NEXT K 
4010 PLAY" vl51 4" , "vl214", "vlO" 
4020 PLAY"o4d2" , "r2" , A3$ 

4030 PLAY"r4vl2o5d", "r4o4b", A3* 
4040 PLAY" o5c+o4a" , "o4af+",A3$ 
4050 PLAY"o4gb" , "o4eg" , A3* 

4060 PLAY"o4a2", "o4f+2", A3* 

4070 PLAY" o4f+r4" , " o4dr4" , " o3d8e 
8 f+ 8 g 8 " 

4080 PLAY" o5a8g+8g2f +" , "vllo5c+8 
d8e2d" , " vl2o3a4 .b8o4c+8o3a8o4d8o3 
d 8 " 

4090 PLAY" o5e8f +8g2f +" , "o5c+8d8e 
2 d", "o3a4.b8o4c+3o3a8o4d8f+8" 

4100 IF J=2 THEN 4140 

4110 PLAY"1 10o5ed+f+egf +age 8 o 6 c+ 

o5bagf+e" , "r2r4116", "vl0o4gl" 

4120 PLAY" vl5o5d4e32d32c+32d32e8 
", "vllo4f+4.g8",A3* 

4130 PLAY"o5c+4r4", n o4e4r4", "o3a 
r 1 6ar 1 6g8e8 " : GOTO 3990 
4140 PLAY ” 1 16vl 1 " , " 1 16v9" , " vl2" 
4150 FOR K=1 TO 2 
4160 PLAY"o5e8f +32e32d+e8g8c+8d3 
2c+32o4bo5c+8e8", "r2r2", n vl0o4g2a 
2 " 

4170 PLAY " o5d8e8f + 8 g 8 g+ 8 a 8 f + 8 d 8 " 

, "Vl0o4f+8r8r2r4" , "o3d2r2" 

4180 NEXT K 
4190 IF 1=2 THEN 4220 
4200 PLAY "o5e8f +32e32d+e8g8c+8d3 
2c+32o4bo5c+8e8", "r2r2", H vl0o4g2a 
2 " 

4210 PLAY" vl5o5d8r8d8r8d8er8r4" , 

" vl2o4f + 8 r 8 f + 8 r 8 f + 8 r 8 " , " vl2o3d8r8 
d8r8d8r8r4" s GOTO 4240 
4220 PLAY"o5er 16erl6g8b8c+rl6c+r 
16a8c+8", "r2r2", "vl0o4g2a2" 

4230 PLAY" o5d8r8d8r8d8r8r4" , "o 4 f 
+ 8 r 8 f+ 8 r 8 f+ 8 r 8 ", " o3d8o4d8o3a8f + 8 d 
8f+8a8o4d8" 

4240 PLAY “11 6v 11", "11 6 v9 ", " v 1 2 " 
4250 FOR K=1 TO 2 
4260 PLAY" vl3r 16o5d f+o6drl6o5df + 
o 6 d", "r2", u vl2o3f+4o4d4" 

4270 PLAY"rl6o5df +o6drl6o5df +o 6 d 
", "r2", "o4f+4d4" 

4280 FOR M=1 TO 4:PLAY"o6c+8.rl6 
", "v9o5g8.o4a", n o3a4":NEXT M 
4290 NEXT K 

4300 PLAY" v 151 24o6dr24dr24dr24dr 
24dr24dr24", " vl0o5f +2" , " vl2o4d2" 
4310 PLAY" o6dr24dr24dr24c+r24c+r 
24c+r24", "r4g4" , "r4a+4" 

4320 PLAY"o5br24br24br24br24br24 
br24" , "o5f+2", " o4b2" 

4330 PLAY"o5br24br24br24ar24ar24 
ar24" , "r4d4“, "r4f+4" 

4340 PLAY" o5gr24gr24gr24gr24gr24 
gr24", "o5d2", "o4g2" 

4350 PLAY" o5ar24ar24ar24ar24ar24 
ar24", "o5f6rl2f6rl2", n o4a6rl2a6rl 
2 " 

4360 PLAY" o5g+r24g+r24g+r24g+r24 
g+r24g+r24" , "o5f6rl2f6rl2" , "o4b-6 
r 12b— 6 r 12" 

4370 PLAY " v 1 3 " , " v 1 O " , " v 1 2 " 

4380 FOR K=1 TO 2 

4390 PLAY" r8o5arl6a8r 16a", "r8o5e 

r 16e8r 16e" , A4$ 

4400 PLAY"r 8 o 6 c+rl 6 c+ 8 rl 6 c+", "r 8 
o5gr!6g8rl6g " , A4^ 

4410 PLAY" r8o6dr 16d8r 16d" , " r8o5f 
+r 1 6 f+8? i 6 1 + " , A45 
4420 PLAY"r8o5brl6b8rl6b", "r8o5f 
rl 6 f 8 rl 6 f ", "o3a4.o4g+8" 

4430 NEXT K 

4440 IF 1=2 THEN 4460 

4450 PLAY"vl5o5a4o6c+4o5a4r4 " , "1 

8vl3o5er8er8er8r4" , "18vl3o3ar8ar8 

ar8r4": RETURN 

4460 PLAY"18vl5r4o5ar8ar8r4" , "18 
vl3r4o5er8er8r4" , "18vl3o3ar8ar8ar 
8r4": RETURN 


4470 7 *********************** 
4480 X 1=1 NT (RND ( 1 ) +256) 

4490 Y1=INT(RND(1)*192> 

4500 PSET ( X 1 , Y 1 ) , 15 

4510 * ***********>**««<********* 

4520 Z=l-Z 

4530 FOR P=0 TO 1 

4540 XA(P)=XA(P)+(P*16) 

4550 YA (P) =YA (P> + (P+16) 

4560 PUT SPRITE P, (XA (P) , YA (P) ) , 
15, Z 

4570 XA(P)=XA(P) +8 

4580 YA (P) =YA (P) +5 

4590 IF XA (P> >255 THEN XA(P)=-20 

4600 IF YA (P) >191 THEN YA(P)=-20 

4610 NEXT P 

4620 RETURN 

4630 7 

4640 IF SN=1 THEN 4740 

4650 7 ifc****************:*****:* 

4660 X2= I NT ( RND ( 1 ) * 1 24 > 

4670 Y2= I NT ( RND ( 1 ) +88 ) 

4680 C2=INT(RND(l)*12)+2 

4690 FOR P=0 TO 1 

4700 L I NE ( X2+P* 1 24 , Y2+ 1 00 > -STEP ( 

6,2) ,C2,BF 

4710 L I NE ( X2+P* 1 24 , Y2 ) —STEP (8,0) 
,7 

4720 NEXT P 
4730 GOTO 4780 

4740 ’ i*:#*}**:**:***:***}*****}***** 

4750 Y4=INT(RND(1)*192> 

4760 C4= I NT ( RND ( 1 ) * 1 2 ) +2 ^ 

4770 LINE(0, Y4) -STEP (256,0) , C4 
4780 ’ 

4790 Z=l-Z 

4800 FOR P=2 TO 3 

4810 PUT SPRITE P, (XA(P) ,65+5*P) 

, (1+14* (P—2) ) ,2+Z 

4820 XA(P)=XA(P)+10 

4830 IF XA (P> >255 THEN XA(P)=-20 

4840 NEXT P 

4850 RETURN 

4860 7 *********************** 
4870 X3=INT (RND ( 1 ) *256) 

4880 Y3= I NT ( RND ( 1 ) * 1 92 ) 

4890 R= I NT ( RND ( 1 ) *30 ) 

4900 CIRCLE (X3,Y3) ,R,7, , , .5 

4910 7 *********************** 

4920 Z=l-Z 

4930 FOR P=4 TO 5 

4940 PUT SPRITE P, (XA (P) , 65+5*P) 

, ( 1+14* (P-4) ) ,4+Z 

4950 XA (P) =XA (P) +5 

4960 IF XA (P) >255 THEN XA(P)=-20 

4970 NEXT P 

4980 RETURN 

4990 7 *********************** 

5000 Z=l-Z 

5010 FOR P=4 TO 5 

5020 PUT SPRITE P, ( XA (P) , 151 ) , 1 , 

4+Z 

5030 XA (P> =XA (P) +5 

5040 IF XA (P> >255 THEN XA(P)=-20 

5050 NEXT P 

5060 RETURN 

5070 7 *********************** 
5O80 DAT A 0 , 0 , 8 , 24 , 56 ,^4 ,T; U, 
3, 15,31,62, 126,252 
5090 DATA 1,3,7, 15,31,31,62, 184, 

240. 192. 160. 144. 12. 12.2. 1 
5100 7 *********************** 
5110 DATA 2,3,11,25,56,4,227,115 
, 63 731,7,0,0,0,0,0 

5120 DATA 070,128,192,192,224,22 

4.224.224. 192. 160. 16. 12. 12.2. 1 
5130 7 *********************** 
5140 DATA 472,170,0,0,0,16715,15 
,31,40,80, 160,64, 128 

5150 DATA 168,144,240,28,55,31,2 

4.24.248.248.232.20. 10.5.2. 1 
51£0 7 *********************** 
5170 DATA 4,2,1,0,0,0,0,16,15,15 
,31,40,20, 10,5,2 

5180 DATA 168,144,240,28,55,31,2 

4,24, 248, 248, 232, 20, 40, 80, 160,64 

5190 ’ *********************** 

5200 DATA 4,2,1,0,0,0,0,16,15,15 

,31,40,40,40,40,40 

5210 DATA 168,144,240,28,55,31,2 

4, 24, 248, 248,232, 20,20,20,20, 20 

5220 7 *********************** 

5230 DATA 4,2,1,0,0,0,0,16,15,15 

, 31 , 40, 40,68, 68, 68 

5240 DATA 168,144,240,28,55,31,2 

4, 24, 248, 248,232, 20, 20,34,34, 34 


Almacenamiento 


BN 


|HM 


— 


METODOS PARA 
ORDENAR DATOS 

Ordenar datos en forma ascendente o descen- 
dente es una operation frecuente en compu- 
tation. Veremos aqrn dos de los metodos 
hasicos. 


« l trabajar con mampulacion de 
datos, frecuentemente nos ve- 
mos obligados a ordenarlos en 
forma ascendente, descendente o bien 
alfabeticamente. 

Para manejar datos de esta forma, ya 
sean numeros o palabras, es convenien- 
te ir guardandolos a medida que se in- 
gresan, en un vector o matriz lineal. 
A este tipo de almacenamiento lo po- 
demos pensar como si guardasemos da- 
tos en cajas ubicadas una a continuation 
de la otra, como vemos en la figura I . 
Para facilitar el entendimiento de esta 
nota, supongamos que observamos es- 

FIGURA 1 




VEC 
TOR l) 

x 2°caja 

1 0 caja 

A 

FIGURA 2 



13 

casillero 1 

10 

casillero 2 

2 

casillero 3 

15 

casillero 4 

8 

casillero 5 

0 

- 

casillero 6 

9 

casillero 7 


1 

r^^illprn ft 



ta hilera de cajas desde arriba, pudien- 
do ver el contenido de cada casillero 
(ver figura 2). 

Cada caja tiene un numero que la iden- 
cifica. Este numero coincide con el or- 
den correspondiente a dicha caja. Es 
decir, la primera caja llevara el numero 
“ I ”, la segunda el numero ”2”, la ter- 

FIGURA 3 


cera el ”3” y asi sucesivamente hasta la 
ultima. 

Supongamos que tenemos que trabajar 
vector como el de la figura 2. 

Como podemos observar, este vector 
tiene solo ocho elementos, cifras en es- 
te caso. 

Pero la ubicacion de los datos no sigue 
ninguno de los ordene? mencionados an- 
teriormente. 

Si necesitamos tener estos datos orde- 
nados en forma ascendente, por ejem- 
plo, deberiamos ir pasando los 
contenidos de las cajas, hasta conseguir 
obtener los datos de la forma deseada. 
Para este procedimento existen varias 
formas de realizacion. 

Basicamente son los metodos que res- 
ponden a los nombres: 

*- seleccion I 
*- seleccion II 
*- seleccion a derecha 
*- burbujeo 
*- shell 




\ 







13 



13 


0 

' 

10 



10 



2 



2 



15 



15 








8 



8 



0 — 

- pasa al vector B 


100 



9 



9 



1 



1 



/ 


A Vector A Vector B 


FIGURA 4 



13 

> 


13 

. 







0 


10 



10 


1 

2 


2 



15 



15 



8 


8 









100 



100 



9 



9 



1 

pasa al vector B 


100 



A A R 







FIGURA 5 


FIGURA 8 



\ 





13 



13 


0 







10 


1 

10 






2 [ 

>asa al vector B 


100 


2 

15 


s 

15 



8 



8 







100 



100 



9 



9 



100 

J 


100 



A AD 

M M 



FIGURA 6 



FIGURA 7 


13 

pasa al ' 


100 


0 





vector b 





100 



100 


1 

100 



100 


o 




Cm 

15 



100 


8 

X 


100 



100 


9 

100 



100 


10 

100 



100 


13 










100 



15 

pasa ai 

15 

/ 



■ vector B 



*- ordenacion rapida 
Iremos comentando y detallando solo 
los dos primeros metodos en esta nota. 
Aclaramos que si se desea ordenar el 
vector en forma descendente, el meca- 
nismo es muy similar. 


METODOS DE 
SELECCION I 


Este metodo utiliza dos vectores: el de 
entrada (donde se encuentran los datos 
a ordenar) y un segundo vector donde 
se iran colocando los datos ordenados. 
Con el solo fin de facilitar la explicacion, 
identificaremos al primer vector con la 
letra A y al segundo con la B. 

Los pasos en que consiste este metodo 
son los siguientes: 

1 - buscar el menor dato en el vector 
A y colocarlo en la primera posicion o 
caja del B. 

En la posicion donde se encontro el me- 
nor dato del vector A, se coloca un “to- 
pe”. Este tope debe ser una cifra mayor 
a las que se almacenan en el vector A. 
Si no se conoce de antemano cual pue- 
de ser el mayor dato, se coloca la cifra 
maxima que admite el sistema. 

2 - repetir el procedimiento I , pero 
buscando ahora el segundo elemento 
mas pequeno. Una vez hallado se lo ubi- 
ca en la segunda posicion del vector B. 
En la caja del vector A, donde se encon- 
tro el segundo dato mas pequeno, se co- 
loca el “tope”. 

3 - repetir el procedimiento I , hasta ob- 
tener todos Ins datos del vector A, or- 
denados segun habiamos prefijado. 
Realicemos estos pasos con nuescro vec- 
tor de prueba de la figura 2. 

El menor elemento es la cifra 0, ubica- 
da en el casillero 6. Pasemos este dato 
a la primera posicion del vector B y co- 
loquemos un tope, como por ejemplo, 
la cifra 100. 

El resultado !o podemos observar esque- 
maticamente en la figura 3. 

Como vemos, hemos cambiado la sex- 
ta posicion del vector A y comenzamos 
a llenar el vector B. 

Hagamos entonces una segunda pasada 


Almacenamiento 


FIGURA 9 



, al vector A, ya modificado. 

Siempre se trabaja sobre el ultimo vec- 
tor A modificado. 

El segundo elemento mas pequeno es la 
cifra I ubicada en la octava posicion del 
A. Lo colocamos en el segundo casille- 
ro del B y rellenamos la octava caja del 
A con el tope 1 00, obteniendo los vec- 
tores como muestra la figura4. 

Con una tercera ejecucion de este me- 
todo, los vectores resultantes serian los 
graficados en la figura 5. 

Con una cuarta pasada, el menor ele- 
mento seria la cifra 8 del casillero 5. Los 
vectores modificados serian los que se 
ven en la figura 6. 

Finalmente, en la septima pasada, encon- 
tramos como menor elemento a la ci- 
fra I 3 del primer casillero del vector A. 
Y se termina de ordenar los vectores 
como se ve en la figura 7. 

Notemos que a la septima pasada, en el 
vector A solo quedan dos cifras por or- 

i 


denar: las cifras “13” y “15”. 

Al finalizar la septima pasada, se orde- 
no la cifra menor, es decir c! numero 
“ 1 3”, y solo queda el “ 1 5” sin ordenar, 
Pero como es el unico restante, no ha- 
ce falta realizar una octava pasada, por- 
que si el procedimiento se desarrollo 
correctamente, deberia ser el menor 
numero que resta ordenar del vector A, 
ya que los restantes casilleros deberian 
contener el numero “tope”. 

Aqui se nota por que buscamos un “to- 
pe” que sea realmente un numero ma- 
yor que cualquiera de los datos 
almacenados en el vector a ordenar. 
Veamos ahora un esquema que simboli- 
ce los pasos a realizar por este procedi- 
miento, pero esta vez, expresados con 
simbolos de computacion. 

Para los que no estin muy familiariza- 
dos con estos simbolos, les aclaramos 
los significados de los mismos en la figu- 
ra 8. 


FIGURA 10 



Comentemos el esquema del procedi- 
miento primero con palabras como en 
la figura 9, y luego con simbolos como 
realmente lo hacen los programadores. 
Como podemos ver, recorremos todo 
el vector, buscando el casillero donde 
se halla el menor dato. Una vez encon- 
trado, guardamos el dato de ese casille- 
ro en el vector B y colocamos en el 
casillero del A (donde se hallaba el me- 
nor dato) el numero "tope”. 

Una vez modificado ambos vectores, 
volvemos a buscar el menor dato del 
vector A y se repiten las operaciones 
anteriores. 

Hay que destacar que este ciclo se ha- 
ce una vez menos que la cantidad total 
de clernentos almacenados en el vector. 
Si en nuestro ejemplo, la cantidad total 
de cajas es 8, entonces el ciclo se repe- 
tira 7 veces. 

Si la cantidad de casilleros fuese 36, el 
ticlo se realizaria 35 veces. 

Solo falta. entonces traducir el esquema 
de la figura 9 en simbolos, como habia- 
mos prometido. 

En la figura 1 0, vemos como se pasa del 
esquema con palabras de la figura 9, al 
esquema solo con simbolos de la figura 
10 . 

Observemos que para este pasaje se uti- 
lizaron los simbolos explicados en la fi- 
gura 8. 

Nuestro victor final ya no es el A, sino 
el vector B con los datos ordenados se- 
gun habiamos pedido. 

Este metodo es sencillo, pero tiene dos 
desventajas: 

*- se repite el ciclo de buscar el menor' 
elemento /arias veces. En consecuencia,. 
hace que el metodo sea lento si el vec- 
tor es muy extenso. 

*- necesita espacio para un vector auxi- 
liar donde se guardaran los datos or- 
denados. 

Este metodo es sencillo de implemen- 
tar si queremos ordenar vectores de po- 
cos casilleros, como por ejemplo, de 1 0> 
6 I 5 elementos. 




HHL--X CARTRIDGES 






algunas de nuestras titulas 


rally EDC3Q 

la ruta delas piramides 
el ultima mahicana 
rut a suicida 
tenis 
pollito 
ti rabombas 
simuladar de vuela 
guerra estelar 
teatra del misteria 


juegas alimpicas I 
ping pang 
hal sparts E 
h a I sparts J 
aventuras en el circa 
misian en ganimedes 
el jardine ra del rey 
base alfa 

auentura en la ant a rtida 
y muchas mas 


juegas alimpicas E 
elefante aaul 
misian suicida 
sintetieadar musical 
camina al tutura 
planeada r 
espianaje alpina 
hamih aee 
paal 
golf 

ajed rea 



Sociedad Andnima 


ADMINISTRACION Y VENTAS DOS JUEGOS POR CARTRIDGE 
TEL: 93-3086/87 97-6476 GARANTIA POR UN ANO 

















z. 

O 


, a> 

pi 

“D Cl 
ro 


cu 

►—* = 
Ln 

OJ ro 

' O 

tu 

M ► 

uj 3 

•^j Q; 


2 vjo; 

3 ^o 


o 

a> 


5 ^ 

5 £ 

5 -n 

h rx> 

5 °- 

£ ? 

O; 


> 

□ -H 

:> ft> 
2 . — 

UU 

ui 

i 

NJ 

-Pn 

O 

o 

00 

NJ 


NJ 

U1 


rpv 

ro 

x 


KD 

V£> 

LT> 


> 


ST 


x 

• 

rs> 

o 

$ 

_ <* 
3J 

z & 

s-s 

• S 

09 ; 
E a- 

3 sr 

o Q. 
*8 
ti 

w I 

• Of 

•s 


I 


Dr Qr 
Sf 3 
a o 

<A . 

=1 

g;S 

?i 

• s 

i'e 

cr 

II 


•& 

|g 

= 9 
* 3 


sr o 

3 Cl 
(O 

o 
-o 
<0 


8t 


Dr 

Q. 

O' 

3 

*< 

S’ 

S’ 

jo 

n 

2 

tn 

X 



Oj 

3 

OJ 

OJ«o 

o o ro 

=> ^ O 

0>H- ^ 

N o Cl 

s §■* 

Q) . S 

O Q; 
co ~ • Q 

^ S 

S3 8 

Q; CZ • 


0 Q; =3 

to — =3 

"S 3 = 

2 a* 3 

Q- £ o 

oj “TZ <5 -o =5. 

1 s ■< 

8 g. -0.3 

0.0 ’p, 


o> 

“O to 

8.8 
co co 


8 o 

O ^ CO 

3 s- 3 

y* g. c 

— Co 3 

Q. O; 

O 2_ 

2. Ln 3 

2xg 

O O 

CU -O o 


o x 

8 3 

£ * 
o. < 

O <T> 

2.JT , 

s;p 

j oj 

o o. 


CO 

o 

-< 

S !8 8 -i 

is?: 

sr ^ x ; 

S3 XI 

<T5 < J , 

o_o_hj ! 
rt) c Oi 

a> S- , — ; 


c; 


31^ 


’ Oj* 
to 


<T> 

O 

Z3 

8 

ro 

. Cl. 


Q 

O' 


Vi 


~ - a. S a. 

$ H!! 8 10 

<T> o 2 “ 5 -rQ 
Ol o -O O c 

* a §-3 8 

2. a; g.S 

Ill'S 

is * 


Oj 


2. a; 

p g-s 

r§-s 

oj tz 

S ° O 

oj r\ 

O. O Cl; 

a; z ^ 
^ g O 

3 g- 5 - 
R 9 cy 


3 * 

ai* y> 

to ^ 


a» 


wu 

O Q 


! io 


NJ 

O 

cn 

ro 

=3 

O. 

aT 

3 

co 

o 

jtT 

3' 

o 

3 

TJ 

OJ 

3 

cr 


S«§. 

=5 "O _o 
ro o “F 

o 

O rr* 

x =: o 


O = 


to 


sr 

Xa- 


to 


CO 

X 

r\ 


r\ 

O' 


to. 


o’ ^ 

|S.i 

< CO 

0 to o. 

r> to 

■8 ® o . 

STS » O 

'f-S ro 

1 ft I 


O; 

to 


£2 5\ I I- 

to ^ *— L l<-s 


NJ 

O 


co 

o 


Of 
F —3 
co S£. 
^ O' 
ro — , 


g -< 
0'"0 
=> O 
<• ^ 

Q to 

2 o 

=3 to 


OJ 

o 

2 i- 

o* 
Oj 


Ln 


-Q 

c 

CO 

o’ 

■O 

o 


ro 


ro 
ro 

=3 

8 

3 

TZ 

c 
a? 

o. §■ 


CU 

s 

TZ 

QJ 

Q 

CL 

DJ 

CL 

CL 

O 


cu 

to 


o_ 

O 

to 

Oj" 

Cl. 

<T> 


3 

c; 

to 

<t> 

Z3 

ro 

3 

Q 

O' 

=3 



ei/w idvnsnd 





usuaria ’87 

V Congreso National de informatlca, Teleinformatica y 

Teiecomunlcaciones. 

informatlca y Comunlcaclones: Recursos para la excelencla. 

Del 1 0 al 5 de Junlo de 1987. Plaza Hotel. 

En el marco de usuaria 87 se llevara a cabo 
Unlmatlca '87: Primer Encuentro de integration 
entre la Universidad y la Empresa. 

Presentaclon de trabajos: 

Los resumenes de los trabajos a presentar deberan ser remitidos 
antes del 15-12-86 a usuaria. 

Areas de interes (No Excluyentes) 

7. inteligencia artificial 

8. America Latina 

9. Tecnologias informaticas 

10. Tecnologfas 
de teiecomunlcaciones 

11. Pequefia y mediana empresa 


1. Gobierno 

2. Educacibn 

3. Banca 

4. Production 

5. Derecho 

6. cultura y Sociedad 



Organiza 


usuaria 




Asociacibn Argentina de Usuarios 
de la informatica y las Comunicaciones. 

Rincbn 326 (1081) capital Federal. 

T.E. 47-2631/2855 



ALPHA 


Almacenamiento 


IGLRA 16 



(TTT^ i min -~ a < i >i 

~D 


I MIN<— A(J)t 

1 K+t-jJ 


1 A(K) *- A(l>) 
I A/h 4^ MINI 

(E) 


Veamos ahora el esquema de este me- 
todo, primero con palabras (ver figura 
15). 

Podemos observar en este esquema, 
que primero se busca el menor dato al- 
macenado desde la primera caja en ade- 
lante del vector. 

Una vez hallado, se intercambian los da- 
tos entre la primera caja y el casillero 
donde se encontro el minimo valor. 
Luego se busca el menor dato a partir 
la segunda caja y una vez encontrado se 


FIGURA 17 


10 

FOR 1 

K*1 TO 

N 

zo 

1 = 1 



30 

FOR 

J»2 TO 

N 

40 

IF A 

(I) >A( J) THEN I=J 

30 

NEXT 

J 


60 

B (K) 

-Ad) 


70 

A(I) 

-TORE 


80 

NEXT 

K 



realizan las mismas operaciones. 
Notemos que, con cada ciclo, disminu- 
ye la cantidad de casilleros para buscar 
el menor dato. 

El vector se va ordenando desde arriba 
hacia abajo, como pudimos ver en el 
ejemplo anterior. 

Pasemos este esquema con palabras, al 
esquema con solo simbolos de compu- 
tacion. En la figura 16 se puede obser- 
var el resultado de este pasaje de 
simbolos. 

Este metodo es mas eficiente que el de 
seleccion I para vectores de mayor di- 
mension, como por ejemplo de 20 6 30 
casilleros. 

En la figura 1 7 y 1 8 se encuentra el lis- 


FIGURA 18 

10 FOR 1=1 TO N 
20 MIN=A < I ) 

30 K= I 

40 FOR J=I+1 TO N 
50 IF MIN>A(J) THEN MIN=A < J ) : K= J 
60 NEXT J 
70 A (K) =A ( I ) 

80 A ( I ) =MIN 
90 NEXT I 

I 

tado de los metodos de seleccion I y II 
respectivamente. 

Solo se tradujo en sentencias el esque 
ma de simbolos comentado mas arriba 
y esquematizados en las figuras 1 0 y 1 6 

Pero tambien se emplean otros meto- 
dos (mencionados al comienzo de esta 
nota). Cada metodo tiene su ventaja y 
su desventaja. No existe una regia que 
indique cuando, exactamente, se deba 
aplicar un metodo en particular. Esto so- 
lo va a criterio del programador y tam- 
bien depende de las caracteristicas del 
vector y del sistema con el cual se esta 
operando. 



PROGRAMAS, TRUCOS Y 


— 


SUGERENCIAS PARA APROVECHAR 
NUESTRA COMPUTADORA MSX. 


Como mejorar los graficos 
Generador de referencias cruzadas. 
Back UP MSX 

Rutinas utiles para el verano (viaje 
programado - calculo calorico) 

Soft para comparar la velocidad de 
las computadoras 
Nuevos productos 
Concurso “El Programador Del Ano” 
Sorteo: “K Test” y “Ranking de Soft- 
ware” ° 

“K64 COMPUTACION PARA TODOS” 
NO SE TOMA VACACIONES. 




1 A 



FIGURA 11 




0 


0 

1 


i 

o 

Pasa a 

o 

4L 

la 3 a 


15 

caja. 
Entonces 
el vector 
antes, 
no se 

15 

8 

8 

13 

producen 
cambios 
en la 
tercer 
pasada 

13 

9 

9 

10 

10 


METODO DE 
SELECCION II 

Este metodo solo utiliza un vector, y no 
necesitamos buscar un numero “tope”. 
Sus pasos son: 

I - seleccionar el elemento mas peque- 
no del vector. 


■■■■ 


FIGURA 14 





0 


0 



1 


i 



2 


2 



8 


8 



9 


9 



10 


10 



15 

X 

13 



13 

15 





FIGURA 15 


2 - intercambiarlo con el elemento ubi- 
cado en la primera caja del mismo 
vector. 

3 - buscar a partir del segundo casillero 
en adelante, el dato mas pequeno. 

4 - intercambiarlo con el valor almace- 
nado en la segunda caja. 

5 - repetir este procedimiento con los 
restantes casilleros. 

Con este metodo, el vector ordenado 
sera el mismo donde se encontraban ini- 
cialmente los datos. Los valores no se 
pasan a otro vector auxiliar. 
Tomemos el mismo vector de la figura 


2, y apliquemosle este metodo. 

El menor dato es el numero “0”, ubi- 
cado en la caja 6. Entonces se intercam- 
bian los contenidos de la primera caja 
con la sexta. 

El vector modificado se puede observar 
en la figura I I . 

Realizamos ahora una segunda pasada 
por este metodo. En consecuencia, mo- 
dificaremos la segunda caja del vector. 
El menor dato desde el segundo casille- 
ro hasta el octavo, es el “I”, hallado 
en la ultima caja. Se intercambian los da- 
tos de la segunda y octava posicion del 
vector, quedando este modificado co- 
mo se ve en la figura 1 2. 

Pero con la tercera pasada, el casillero 
a modificar seria el numero 3. Se busca 


el menor dato a partir de la tercera ca- 
ja, como se puede notar es el numero 
“2” ubicado en la tercera caja. 

En este paso, dala casualidad de que no 
se producen cambios, como se puede 
observar en la figura 13. 

Continuando con los mismos pasos, ob- 
tenemos finalmente en la septima pasa- 
da que el menor numero entre el 
casillero septimo y el octavo es el nu- 
mero “ 1 3” de la ultima caja. Por lo tan- 
to, el numero I 5 pasara al octavo lugar 
y al I 3 el septimo como se esquematiza 
en la figura 14. 



I 



Software Musical 




COMPONIENDO COMO 
BEETHOVEN 

Este es un soft del tipo de los utilitarios , que les da 
una ayuda a los amantes compositores de la musica. 







~ . . . . r 


HARD COPV 


START 

VtFROM = OO 1 
tTO : 00-7 



SPP 



n 

111 


Li I 


Hace varios anos atras, comen- 
zaron a aparecer en los negocios espe- 
cializados en musica los primeros 
sintetizadores. 

Muchos negaban el triunfo de estos nue- 
vos aparatos que utilizaban por primera 
vez un chip. 

Pero rapidamente se fueron mejorando 
estos organos electronicos y comenza- 
ron a invadir el mercado. 

Y no transcurrio demasiado tiempo pa- 
ra poder encontrar sintetizadores o 
software musical, pero esta vez coman- 
dado desde una computadora hogarena. 
“Super Sinth” es uno de los mejores uti- 
litarios que le permite a los usuarios de 
las computadoras MSX, poder crear te- 
mas musicales sin necesidad de ser ex- 
pertos musicos. 

Solo hay que tener buen oido para com- 
poner, y muchas ganas de alegrar un po- 
co las cosas con nuestros sonidos. 

No sera demasiado el tiempo que tar- 
demos en dominar practicamente todas 
las ppciones que nos ofrece este pode- 
roso soft-sonoro. 

Merece resaltarse la simplicidad que 
ofrece para crear los mas elaborados 
efectos sonoros y musicales. Muchas son 
las opciones y todas muy faciles de re- 
conocer y utilizar. 

LAS OPCIONES 

A primera vista nos veremos sentados 


frente a una especie de piano de pared, 
que en su parte media nos muestra el 
panel de una computadora musical y en 
la parte superior, un utilisimo pentagra- 
ma para todos aquellos que saben inter- 
pretarlo o leerlo. 




elegimos la opcion de la cruz del menu 
principal. 

De otra forma, si no nos animamos aun 
a tocar estas, a veces, sutiles opciones, 
podremos obtener 1 0 tipos de resulta- 
dos musicales distintos 
Asi cada vez que pulsemos una tecla de 
funcion, observaremos como se confi- 
gura en base a los items ante, iores, el 
tipo de sonido elegido. 

Podremos ver lo que tocamos en el pen- 
tagrama, grabar la musica interpretada 
mientras nos marca el tiempo del com- 
pas elegido. Luego tambien podremos 
verb en el pentagrama, con su corres- 
pondiente clave, etcetera. 

Otra de las asombrosas opciones es la 
de poder sacar una copia de la partitura 
en una impresora, que como de costum- 
bre ha de ser MSX. 



El panel de computadora al que hacia- 
mos referencia esta dividido en dos par- 
tes: la media izquierda es la destinada a 
los distintos menues, y la derecha, a los 
items que hacen que nuestro computa- 
rizado organo suene como suena. 

Esto significa que podremos cambiar el 
volumen, ruido, forma de onda, el ata- 
que, release, velocidad del eco, vibra- 
to, etcetera. Todo esto sera posible si 


Si es nuestro gusto podremos manipu- 
lar, directamente sobre el pentagrama, 
las notas y silencios para retocar los 
efectos no deseados, producto de nues- 
tro apuro por interpretar correctamen- 
te una melodia mientras la grabamos. 
Recordemos por ultimo que la grabacion 
se efectua en RAM, pero que luego po- 
dremos pasar a cassette, para record'ar 
nuestros mejores momentos. 








CURSIVA 


CLASE: UTILITARIO AUTOR: DANIEL GALIMBERTI 



ste programs escribe letras 
cursivas definidas sobre una 
matriz de 8 de ancho por 1 6 
de alto. Es un programs utilitario de ti- 
, po grafico. Puede ser utilizado en la pro- 
. gramacion de otros software que lo 
contenga, como por ejemplo programas 
, destinados a ninos, por la claridad y la 
: facil lectura de los caracteres cursivos. 
El juego de caracteres incluye a todas 
las letras del abecedario, (incluidas la ene 
y las vocales acentuadas) tanto en ma- 
yusculas como en minusculas, asi como 
los corchetes, parentesis, simbolos arit- 
meticos, comillas, numeros, potencias, 
subrayado, puntos, comas, etcetera. 


BLOQUES DEL 
PROGRAMA 


SM00-D4 1 B% Son leidos los argumen- 
ts que se encuentran en la funcion 
USR. En base a estos, entre las direc- 
ciones D4 1 8-D437 es calculada la direc- 
cion de la VRAM en la que sera escrito 
el mensaje. 

D438-D446S Las variables del pro- 
grams son colocadas en sus valores ini- 
ciales. Ellas son: 

PPAN (Puntero de pantalla-2 
bytes-D583) 

Posee la direccion de la Vram a la cual 
es tranferida cada byte de los disenos. 
CTEX (Contador de texto-l 
byte-D585) 

Posee la cantidad de caracteres que fal- 
tan escribir y es la serial para la finaliza- 
cion del programs. 

PTEX (Puntero de texto-2 bytes-D58 1 ): 
Posee la direccion del proximo byte del 
texto a leer. 

D44A-D44F: Se verifica que la pan- 
talla esta en Screen 2. Si esto no es asi, 
el programs se bifurca a la rutina Erro2. 
D452-D4B I Se calcula la direccion de 
la RAM en la que se encuentra el dise- 
no es cargada en HL. En caso de estar 
ser un caracter no ordenado secuencial- 
mente, el programa se bifurca a una ru- 
tina espedfica para ese caracter (p.ej. 
AACENT) donde la direccion del dise- 
fio es cargada en, HL. En caso de estar 
ordenado secuencialmente, entre las di- 
recciones D49C y D4BI se determina 


la direccion. Si el caracter no esta defi- 
nido, el programa salts a la rutina 
ERROR. 

D4B2-D4C 7: Los disenos son trans- 
ferees a la pantalla. 

D4CA-D4E8: Las variables son actua- 
lizadas. Si la ejecucion del programa ha 
finalizado, bifurca a VOLVER, en caso 
contrario vuelve a CICLO (D452). 
fD4EB-S$2$$ Determinacion de las 
direcciones de los disenos de los 
caracteres. 

D526-D54F: Rutina de error por ca- 
racter no definido. 

DS52-D578: Rutina de error por no 
estar en Screen 2. 

D57B-D5 80: Vuelta al Basic, ajuste 
de la pila. 

D58I-D585: Variables del programa. 
DS86-D5BA: Mensajes de error. 
Los disenos de caracteres se encuentran 
entre las direcciones CC60 y D240. 
Para copiar este utilitario, primero tipie- 
mos el listado de la figura I , lo ejecuta- 
mos, y luego entramos la sentencia 
NEW para borrar el listado BASIC y 
quedarnos con los codigos cargados en 
la memoria. 

Luego copiemos el listado de la figura 
2 y procedamos de la misma manera que 
con el anterior. 

Recomendamos que antes de ejecutar 
cada listado, lo guardemos en cinta o en 
disco, porque estamos trabajando direc- 
tamente con codigos sobre la RAM. 

Si copiamos algun codigo erroneo de las 
sentencias DATA, saldra un mensaje de 
error y el numero de linea donde se co- 
pio el dato equivocado. 

Una vez cargados correctamente los dos 
listados de la figura I y el 2, copiemos 
el programa cargador de la figura 3. 

Al ejecutar este pequeno programa, ve- 
remos por fin, como se escribe sobre 


la pantalla con letra cursiva. 

Notemos que la parte en BASIC de las 
dos primeras figuras son muy parecidas. 
Con solo modificar un par de numeros 
de la primera, ya tendras parcialmente 
copiado el listado 2. 

Al ejecutar estos dos programas (re- 
cuerda primero copias uno y lo ejecu- 
tas, y luego copias el segundo y tambien 
lo haces correr), no apreciaras ningun 
cambio que represente la funcion del 
programa que se esta ejecutando, salvo 
un mensaje de “espere...” 

Recien al cargar en memoria el listado 
de la figura 3, notaras como funciona 
el programa. 

Para cambiar el mensaje que quieres que 
se imprima en cursiva, deberas cambiar 
el contenido entre comillas de la linea. 
Si deseas utilizar este programa como 
una rutina de otro algoritmo, recuerda 
que el programa se ejecuta haciendo un 
def usr = &hd400 y un usr(“tex- 
to”),x,y en screen 2. Si la pantalla no 
se encuentra en screen 2 en el momen- 
to de ser ejecutado el programa, o si 
el caracter usado como argumento no 
esta entre los definidos por el progra- 
ma, se generaran mensajes de error. De 
la misma manera, si no se incluyen los 
argumentos x e y en la funcion usr, el 
programa generara un Syntax Error. 
X e Y son coordenadas de pantalla, y 
para determinar sus valores hay que cal- 
cularlos como para cualquier funcion 
grafica en screen 2. Los valores seran 
modificados para ubicar a las ietras en 
coordenadas que sean multiplos de 
ocho. 

El largo maximo de una frase es el que 
acepta la funcion USR como argumen- 
to: 255 caracteres. 

Los argumentos pueden ser escritos di- 
rectamente o por medio de variables. 



o 



Figura 1 


10 CLSsKEY OFF: LOCATE 10, 9: PRINT 
"EsperA un momento ..." 

20 D= 1000: SUM A=0 

30 FOR F=8cHCC60T0 &HD211 STEP 47 
40 FOR 1=0 TO 46: READ A* 

50 SUM A=SUM A+ VAL ( " &H " + A* > 

60 POKE I+F , VAL ( "&H U +A$) 

70 NEXT I : READ B % 

80 IF SUMA <>VAL<“&H"+B*) THEN P 
RINT"error en el data ";D:STOP 
90 D=D+10: SUMA=0: NEXT F 
1000 DATA 0,0, 1C, 1C, 38, 60, 0,0,0, 
0,0, 0,0, 0,0, 0,4, 8, 10, 10,20,20,20, 
20,20,20,20,20, 10, 10,8,4,20, 10,8, 
8, 4, 4, 4, 4, 4, 4, 4, 4, 8, 8, 10,2A8 
1010 DATA 20,0,0,0,0,0,82,44,28, 

10.28. 44.82.0. 0.0.0.0.0.0.0.0. 10, 
10, 10, FE, 10, 10, 10,0,0,0,0,0,0,0,0 
,0,0, 0,0,0, 1C, 1C, 38,60,0, 43A 
1020 DATA 0,0, 0,0, 0,0, 0,0, 0,0, FE 
, 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 
1C, 1C, 1C, 0,0, 0,0, 0,0, 0,0, 1,2, 4, 8, 

10.20.40.80.0. 251 

1030 DATA 0,0,0,0,0,0,38,44,82,8 
2 , 82 , 82 , 82 , 44 , 38 ,,0 ,0,0, 0,0, 0,0, 8, 
18, 28 ,8, 8, 8, 8, 8, 1C, 0,0, 0,0, 0,0,0, 
38,44,44,8, 10, 20, 40, 74, 4C, 606 
1040 DATA 0,0,0,0,0,0,0,38,44,4, 

18.4.2.2. 44 . 38 .0. 0. 0.0. 0.0. 10. 10, 
12, 22, 22, 7F, 2, 2, 2, 2, 0,0, 0,0, 0,0,0 
,7C, 40, 40, 78, 44, 2, 2, 44, 419 

1050 DATA 38,0,0,0,0,0,0,0, 1C, 20 
,20, 40, 4E, 51, 61, 22, 1C, 0, 0, O, O, 0, 0 
, O , 62 , 5C ,4,8, 3C , 10,20,20,20,0,0,0 
,0,0, 0,0, 18,24,24, 18, 24, 42, 42, 4A8 
1060 DATA 24, 18,0,0,0,0,0,0,0, 1C 
, 22 , 22 , IE, 2, 2, 4, 8, 10,0,0,0,0,0,0, 
0 , 0 , 0 , 0 , 30 , 30 , 0 , 0 , 30 , 30 , 0 , 0 , 0 , 0,0 
,0,0, 0,0,0, 18, 18,0, 1 C A 

1070 DATA O, 18, 18,30,0,0,0,0,0,0 
,0,2, 4, 8, 10,20, 10,8,4,2,0,0,0,0,0 
,0,0,0, 7E, 0, 0, 7E, 0,0, 0,0, 0,0, 0,0, 
0,0,20, 10,8,4,2, 1F6 
1080 DATA 4,8, 10,20, 0, 0,0, 0,0,0, 
0,38,44,42,2,4,8, 10, 10,0, 18, 18,0, 
0, 2, 5, 5, 9, 29, 59, F, 51, 91, ,91, Al, 41, 

0,0,0,0,30,68, A8,A8, 70, 28,24, 6F7 
1090 DATA 22, 2A, B2, B4, 48, O, O, O, O 
,4C,92, A2, A4, 48, 70, 40, 40, 44,4A,2t 


, 18,8, 10,0,0,4,38,4C,4A,2A,9, 11, 1 
1, 1 1, 71, 92, 6C, 0,0, 0,0, 48, 94, 78, 10 


, 18,20, A83 

1100 DATA 40,40,44,4A,2C, 18,8, 10 
,0,0,31, 4A, 94,90, 50, 3A, 54, 10,50,9 
0 , 90 , 60 , 0 , 0 , 0 , 0 » 6C , 92 , A4 , 79 , 22 , IE 
, 4, 4, 22, 52, 42, 3C, 0,0, 0,0, A2,E5, A5 
, 25 , 26 , B93 

1110 DATA 3C , 64 , A4 , 24 , 24 , A4 > 46 , 0 
, 0, 0, 0,41, 62, 5E, 2, 2, 2, 32, 49, 49, 41 
, 22 , 1C, 0,0, 0,0, 8, 8, 18, 28 , 48 , 8 , A , C 
, 18, 28, 48,88,88,88,50, 20, A3, E4, A4 
, 24 , A55 

1120 DATA 28,30,28,24,64, A4,A4, 4 
3,0,0,0,0,88,94,54,38, 10, 10, 10, 10 
, 16, 71, 99, 66, 0,0, 0,0, 44, 44, 6C,6C, 
6C, 54, 54, 54, 44, 46, 45, 82, 0,0, 0,0, 6 


1,22, 22, ABF 

1130 DATA 32, 32, 2A, 2A, 26,26, A2, A 

2. 42.0. 0.0.0. 2C> 52, 52, Al , Al , Al , 81 
, 81, 81, 42, 42, 3C, 0,0, 0,0, 1C, 62, Al, 
2 1 , 6 1 , 32 , 2C , 20 , 20 , AO , AO ,40,0,0,0, 
O, 2C» 52, BBD 

1140 DATA 52, A1,A1,A1, 81,81, 8i>5 
A, 46, 3E, 1,0, 0,0, 18,64, A2, 22, 64, 38 
,24,22,22, A2,A2, 41, 0,0, 0,0,8, C, 14 
,12,22,41,81,1,31,49,22, 1C, 0,0,0, 
0,41, A78 

1150 DATA 42, 7E, 84,8, 7C, 20, 4E, 91 
, 89, 42, 3C, 0,0, 0,0, 60, 92, 92, 92, 92, 
92,92, 12, 12, 12, 12, D, 0, 0, 0, 0, 40, AO 
, A4, A7 , 24,24, 24,24,24,24, 24, 18, 0,' 
0,0,0, B2E 

1160 DATA 80,40,54,57,54,54,54,5 

4.54.54.54.28.0. 0.0.0.81.41.41.22 


,14,8, 14,22,41,41,41,81,0,0,0,0,0 
, 60, 94, 94, 94, 94, 94, 94, D, 6, 4, C, 14, 
24 , 24 , AF 1 

1170 DATA 18,81, C2, BC, 4, 8, DO, 24, 
58 , 80 , BD ,C3,81,0,0,0,0,3C, 20 , 20 , 2 
0 , 40 , 80 , 40 , 20 , 20 , 20 , 20 , 3C ,0,0, 0,0 
,0,0, 0,0, 80 , 40 , 20 , 10,8,4,2, 1,0,0, 
947 

1180 DATA 0,0,78,8,8,8,4,2,4,8,8 
,8,8, 78 ,0,0, 0,0,0, 10, 28 , 44 , 82 ,0,0 
, 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , FF , FF , 0 , 0 , 0 , 
0,0, 0,0, 0,0,0, 42E 
1 1 90 DAT A 0,0, 0,0, 1C, 1C, E, 3, 0,0, 
0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 34 » 4C , 4 

4 . 44 , C4 , 45 , 4D , 36 ,0,0, 0,0, 30 , 48 , 48 
, 48, 48,50, 60, 40, C8, 4F, 48, 30, 6AC 
1200 DATA 0,0, 0,0, 0,0, 0,0, 1C, 22, 

42. 44, CO, 41, 22, 1C, 0, 0, 0, 0, 0, 4, 4, 4 
, 34 , 4C , 44 , 44 , C4 , 45 , 4D , 32 , 0 , 0 , 0 , 0 , 
0,0, 0,0, 1C, 22, 42, 4C, FO, 41 , 22, 6BE 
1210 DATA 1C, 0,0, 0,0, 10,28,28,28 

, 28,28, 28,30, FO, 2B, 3C, 24, 24, 24, 24 
, 18,0,0,0, 0,34, 4C, 44, 44, C4, 4D, 56, 
24, C, 14,24, 18,20,50,50,50,50,50,6 
0 , 40 , DO , 69 , 9C3 

1220 DATA 4A, 44, 0,0, 0,0, 0,0,0, 18 
, 18, 0,20, 60, AO, 21, 22, 1C, 0,0, 0,0,0 
,0,18, 18,0, 10,30,50,90, 17, 18,30,5 
0,90,90,60, 18,24,24,24,28,30,20,6 
8, B4, 7D4 

1230 DATA 39,25,22,0,0,0,0,18,24 
,24, 24, 28, 30, 20, 60, AO, 21, 22, 1C,Q, 
0,0, 0,0, 0,0, 0,0, 54 , AA , A A , A A , 2B , 2B 
, 2A, 0,0, 0,0, 0,0, 0,0,0, 28, 54 , 94 , 6B 
D 

1240 DATA 94,15,15,12,0,0,0,0,0, 
0,0, 0,0, 1C, 32, 6A, A7 , 22, 22, 1C, 0, 0, 
0,0, 0,0, 0,0, 10, 18,34,54,94, 15, 15, 

12. 10. 10. 10. 10.0. 0.0.0.0. 34 . 4, , 4C 
F 

1250 DATA 44 , C4 , 45 , 4D , 35 ,6,C, 14, 

4.0. 0.0.0.0.40.68.50.90.11.9.6.0, 
0,0, 0,0, 0,0, 0,0, 8, 18, 24, C2, 3, 12, C 
,0,0, 0,0, 10, 10, 7E, 10, 10, 10,596 
1260 DATA 10, 30, DO, 11, 12, C, 0,0,0 
,0,0, 0,0, 0,0, 48, 48, 48, C8, 49, 5A, 24 
,0,0,0,0,0,0,0,0,0,40, A4,A4,A7, 24 
, 24, 18, 0, 0, 0, 0, 0, 0, 0, 0, 4A, 67F 
1270 DATA AA,AA,AA, AA,2B,2A, 14,0 
,0,0,0,0,0,0,0,22,52,52,54,48,95, 

25 . 22 .0. 0. 0.0. 0.0. 0.0. 44 , A4 , A4 , A4 
, A4, 2D, 16, 4, C, 14,24, 18, 0, 0, O, O, SC 
6 

1280 DATA 30, 48, 88, 88, 90, 29, 6, C, 

14.24.24. 18.0. 8. 10. 0. 34. 4,, 44, 44, 
C4, 45 , 4D , 36 ,0,0, 0,0, 0,4, 8,0, 18, 24 
, 44, 48, FO, 41 , 22, 1C, 0, O, O, O, O, O, 4, 

7BA 

1290 DATA 8, O, 10, 10, 30, DO, 11,9,6 
,0,0, 0,0, 0,4, 8,0, 18, 24 , 64 , 5F , C4 , 4 

4.44.38.0. 0.0.0.0.0.8. 10.0.48.48, 
48, C8, 49, 59, 26, 0,0, 0,0, 0,0, 657 
1300 DATA 34,48,0,28,54,94,94,15 

, 15, 12, 0, 0, 0,0, 32, 4C, 81, 42, 42, 62, 
52 , 4A , 46 , 42 , 42 ,81,0,0,0,0,0,0»C,C 
,0,8,8, 10,20,40,40,40,22, 1C, 0,0,0 
, 77E 

1310 DATA 0,0,18,18,0,18,18,18,1 
8, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 1 

8. 18. 18. 18. 18. 18.0. 18. 18.0.0.0.0, 
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240 


Figura 2 


10 CLSSKEY OFFs LOCATE lp,9spRlNT 

"EsperA un momenta ..." 

20 D= 1 000 : SUMA=0 

30 FOR F=&HD400 TO &HD572 STEP 3 
7 

40 FOR 1=0 TO 36: READ A$ 

50 SUMA=SUM A+VAL ( " &H " +A* ) 

60 POKE I +F , VAL ( " &H " + A$ ) 

70 NEXT I : READ B* 

80 IF SUMA <>VAL("&H"+B*> THEN P 
RINT"error en el data ";D:STOP 
90 D=D+ 10: SUM A=0 s NEXT F 


1000 DATA E5 , 2A , F8 , F7 , 22 ,81, D5 , E 

1 , EB, Cl , El , E5, C5, D5, CF, 2C» CD, B, 40 

, E3 , C5 , D5 , C 1 , D 1 , 69 , 26 ,0,6,3, CB , 3D 

, 10, FC, 6, 8, CB, 25, 142F 

1010 DATA CB, 14, 10, FA, 6, 3, CB, 3B, 

10, FC, 6, 3, CB, 23, 10, FC, 16,0, 19,22, 

83 , D5 , 2A ,81, D5 , 7E , 32 , 85 , D5 , 23 , 5E , 

23, 56, ED, 53, 81 , D5, EGA 

1020 DATA 3A, AF , FC, FE, 2, C2, 52, D5 

, 2A, 81 , D5, 7E, FE, 20, CA, ED, D4, FE, AO 

,CA,F2,D4,FE,82,CA,F7>D4,FE, A1,CA 

, FC, D4, FE, A2, CA, 1,D5, 1A31 

1030 DATA FE , A3 , CA , 6 , B5 , FE , A4 , C A 

, B , D5 , FE , A5 , C A , 10, D5, FE, AD, CA, 15, 

D5, FE, 21 , CA, 1 A, D5> FE, A8, CA, 1F,D5, 

FE, 40, CA, 26, D5, FE, 27, 17A7 

1040 DATA DA , 26 , D5 , FE , 7B , D2 , 26 , D 

5, FE, 41 , D4, 24, D5, D6, 27, 6F, 26,0, 6, 

4, CB, 25, CB, 14, 10, FA, 11,60,CC, 19, E 

5, ED, 5B, 83, D5, 1,8, 1180 

1050 DATA 0 , CD , 5C , 0 , ED , 5B , 83 , D5 , 

14. 1.8.0, El, 9, CD, 5C, 0, 2A, 83, D5, 1, 

8.0. 9 . 3, , 7 , BD , D4 , EB , D4 , 22 , 83 , D5 , 2 
A, 81 , D5, 23, e3F 

1060 DATA 22 ,81, D5 ,21, 85 , D5 , 35 , C 
2 , 52 , D4 , C3 , 7B , D5 , 24 , C9 ,21, 30 , D2 , 1 
8 , CO ,21, 90 , D 1 , 18, BB ,21, AO , D 1 , 18, B 

6.21, B0,D1, 18, Bl, 21, CO, 120C 
1070 DATA Dl, 18, AC, 21, DO, Dl, 18, A 

7.21, EO, D1 , 18, A2, 21 , FO, D1 » 18, 9D, 2 
1, 10,D2, 18,98,21,20,02, 18,93,21,0 
,D2, 18, 8E, 3D, C9, 32, Al , 101C 

1080 DATA D5, 3A, BO, FC, 32, AF , FC, C 
D,5F, 0,21,86,05, 1, 1C,0, 11, 0,0, CD, 
5C, O, 21 , 86, D5, 1 , 1C, O, 11,0, 18, CD, 5 
C, 0, 3E, 4, 32, BF6 

1090 DATA DC , F3 , C3 , 7B , D5 , 3A , BO , F 
C, 32, AF , FC, CD, 5F ,0,21, A2, D5, 1, IB, 
O, 11,0,0,CD,5C,0,21,A2,D5, 1, 1B,0, 

1 1 . 0 . 18, CD, 5C, ec5 

1100 DATA O , 3E , 4 , 32 , DC , F3 , C3 , 7B , 
D5 , E 1 , Dl , D 1 , E5 , C5 , C9 ,0,0, 0,0,0, 45 
, 52 , 52 , 4F , 52 , 3A , 20 , 43 ,41, 52 , 4 1 ,*43 
, 54, 45,52, 20, 4E, DD3 
1110 DATA 4F , 20 , 44 , 45 , 46 , 49 , 4E , 4 
9 , 44 , 4F , 0, 45, 52, 52, 4F, 52, 3A, 20, 4E 
, 4F , 20, 45, 53, 54, 4F , 59, 20, 45, 4E, 20 
, 53, 43, 52,45, 45, 4E, 20,32, 999 


Figura 3 


10 COLOR 11,1,15 
20 SCREEN 2 
30 DEF USR=&HD400 
40 PRINT USR ("Miguel Angel ya no 
es tan angel como parece, no?"), 
7, 100 

50 GOTO 50 






MANEJANDO LAS 
PANTALLAS 

Como vimos en el numero anterior de es- 
ta publication, el modo 1 permite mane- 
jar sprites. En el numero anterior hemos 
visto las tablas de nombres, patrones y 
de colores para el modo 1. 





xisten sentencias en Basic que 
permiten trabajar facilmente 
con este tipo de figuras anima- 
das, pero aquf veremos como podemos 
manejarlas cambiando algunos datos de 
lugares estrategicos de la VRAM (memo- 
ria de video). 


TABLA DE PATRONES 
PARA SPRITES 

La tabla de patrones de sprites tiene una 
longitud de 2.048 bytes dividida en 256 
bloques de 8 bytes cada uno. El comien- 
zo de la tabla esta dada por BASE (9). 

Es aqui donde se guardan las definicio- 
nes de nuestros sprites. 

El sprite del piano I esta definido en los 
bytes 8 al 15, el sprite del segundo pia- 
no, en los bytes 16 al 24 y asi sucesi- 
vamente. 

Pero para definir sprites de 16x16 uti- 
lizaremos 32 bytes. El sprite de 16x16 
del piano 0 esta definido en los prime- 
ros 32 bytes de esta tabla. 

En el esquema de la figura 8, veras la for- 
ma en que se guarda la informacion de 
los disenos de los sprites para los dos ta- 
manos, 8x8 y 16x16. 

Con el listado de la figura 9 vemos co- 
mo podemos definir un sprite sin usar 
la sentencia SPRITES. Tal vez esto te pa- 
rezca un poco mas complicado que de- 
finirlos con SPRITES, pero esta forma, 
con VPOKE, es util para los programa- 
dores en lenguaje de maquina. Todas las 
direcciones de comienzo de estas tablas 
son modificables como vimos antes. 


Figura 8 






Figura 8 


0 

0 

0 

0 

0 

0 

1 

1 

0 

0 

0 

0 

1 

1 

0 

0 

0 

0 

1 

1 

0 

0 

0 

0 

0 

1 

0 

0 

0 

0 

0 

0 

0 

1 

0 

0 

0 

0 

0 

0 

1 

0 

0 

1 

1 

0 

0 

0 

1 

0 

1 

0 

0 

1 

0 

0 

1 

0 

1 

0 

0 

1 

0 

0 

1 

0 

1 

1 

1 

1 

0 

0 

1 

0 

1 

1 

1 

1 

0 

0 

1 

0 

0 

0 

0 

0 

0 

0 

1 

0 

1 

0 

0 

0 

0 

0 

1 

0 

0 

1 

1 

0 

0 

0 

1 

0 

0 

0 

0 

1 

1 

1 

0 

1 

1 

0 

0 

0 

0 

0 

0 

0 

0 

1 

1 

1 

1 

1 

1 

1 

0 

0 

0 

0 

0 

0 

0 

0 

1 

1 

0 

0 

0 

0 

0 

0 

0 

0 

1 

1 

0 

0 

0 

0 

0 

0 

0 

0 

1 

0 

0 

0 

0 

0 

0 

0 

1 

0 

0 

0 

0 

1 

1 

0 

0 

1 

0 

0 

1 

0 

0 

1 

0 

1 

0 

0 

1 

0 

0 

1 

0 

1 

0 

0 

1 

1 

1 

1 

0 

1 

0 

0 

1 

1 

1 

1 

0 

1 

0 

0 

0 

0 

0 

0 

0 

1 

0 

0 

0 

0 

0 

1 

0 

1 

0 

0 

0 

1 

1 

0 

0 

1 

0 

0 

0 

1 

1 

0 

0 

1 

0 

0 

0 

0 

0 

1 

1 

0 

1 

1 

1 

1 

1 

0 

0 

0 

0 

0 

0 

0 

0 

0 

0 

0 

0 

1 

1 

1 

1 

1 

0 

0 

1 

0 

0 

1 

1 

1 

0 

0 




• 








• 






TABLA DE ATRIBUTOS 
PARA SPRITES 


En esta tabla se encuentra almacenada 
la informacion correspondiente a cada 
uno de los pianos de sprites. El comien- 
zo de esta tabla esta dada por BASE (8). 
Se encuentra estructurada en 32 tablas, 
una por piano, y cada una tiene una lon- 
gitud de 4 bytes (ver figura 10). 

Por lo tanto, la longitud total de la ta-* 
bla de atributos es de 1 28 bytes (32*4). 
Por ultimo, faltaria aclarar la funcion de 
cada byte de los bloques en que se divi- 
de la tabla de atributos sprites. 

Como vemos en la figura 1 1 , el byte 0 


guarda la posicion de la coordenada X 
del sprite. Mientras que el byte I , alma- 
cena la posicion de la coordenada Y. En 
el byte 2 se encuentra el numero del 
sprite a visualizar en el piano correspon- 
diente, y por ultimo el byte 3 guarda el 

Figura 9 

10 SCREEN 1 

20 C0=BASE (9) s REM Base (9) da el 
comienzo de ;la tabla de patrone 
s sprites para el modo 1. 

30 FOR F=CO TO C0+7:REM Abarca 1 
os 8 primeros bytes de la tabla 
40 VPOKE F, 195: REM Definimos el 
sprite para el piano 0 por haber 
eleqido los primeros 8 bytes de 1 
a tabla 
50 NEXT 

60 PUT SPRITE 0, < 1 10, 100) , 6, 0: RE 
M Colocamos el sprite en pantalla 


color con que se vera al sprite. 

Pero para esto ultimo, solo se emplean 
los cuatro bits mas bajos del byte 3. Los 
bits 6, 5 y 4 no tienen uso aun. En cam- 
bio el bit 7 es el “bit de anticipacion de 
reloj”. Esto significa que al colocar es- 
te bit en 0, la esquina superior izquier- 
da se posicionara en el punto X, Y, en 
cambio si es I , se ubicara en el punto 
X-32, Y. 

Finalmente, en la figura 1 2 veremos co- 
mo utilizar esta tabla. 

Para todos estos temas avanzados, es 
aconsejable practicar cambiando los va- 
lores a los programas propuestos y pro- 
bar inventar los propios. 

De esta manera advertiras cambios que 




Tabla de 
atributos sprites 


bloque piano 31 


bloque piano 30< 


1 


bloque piano 4^ 

bloque piano 3<£ 
bloque piano 2{[ 
bloque piano 


Bloque para 
el piano 0 


f 





ayt 

3 0 







ayt 

3 1 







ayt 

3 2 







ayt 

5 3 





Figura 11 Bloque dentro de la tabla de atributos sprites 


BIT 0 BIT 1 BIT 2 BIT 3 BIT 4 BIT 5 BIT 6 BIT 7 


byte 0 
byte 1 ■ 
byte 2 
byte 3 


p 

0 

s 

c 

10 

N 

X 


p 

0 

31 

c 

1 Q 

N 

Y 


N 

JM 

. D 

E F 

AT 

RO 

N 


-L 

SIN 

US 

) 

C 

Oj 

■o 

R 



bit de 

anticipacion 
de reloj 



• 

OTIAC 


1 

JOrillc 

gios 


1 


te ayudaran a comprender el tema. 
Como habras notado, trabajar directa- 
mente sobre la memoria de video no es 
complicado, y puede ayudarnos a agre- 
gar efectos especiales a nuestros pro- 
gramas como mostramos en los listados 
de esta nota. 

Aqui dejamos todo lo referido a la 
VRAM, nos encontraremos en proxi- 
mos numeros, cuando hablemos de la 
VRAM para los modos 2 y 3. 

Figura 12 


10 SCREEN 1 

20 C0=BASE<9) : REM Base (9) da el 
comienzo de ; la tabla de patrone 
s sprites para el mado 1 . 

30 FOR F=CO TO C0+7--REM Abarca 1 
os 8 pr imeros bytes de la tabla 
40 VPOKE F 7 195: REM Definimos el 
sprite para el piano 0 por haber 
elegido los primeros 8 bytes de 1 
a tabla 
50 NEXT 

60 PUT SPRITE 0, (110, 100) ,6,0: RE 
M Colocamos el sprite en pantalla 
70 FOR F=1 TO 400= NEXT: REM Re tar 
do para visual izar el sprite ante 
s de cambiarlo 

80 ATRI=BASE< 8 > : REM La variable 
? ATRI’ tomara el valor del comien 
zo de la tabla de atributos 
90 VPOKE ATRI , 10: REM Cambia el v 
alor de la coordenada X 
100 VPOKE ATRI+1 , 30: REM Cambia 1 
a coordenada Y 

110 VPOKE ATRI +3 , 6 s REM Cambia el 
color del sprite 


CARACTERES 

INVERTIDOS 

El siguiente programa en co- 
digo de maquina fue escrito 
por Daniel Galimberti, y nos 
brinda la posibilidad de traba— 
jar con caracteres invertidos 
en screen 0. A continuacion 
les damos el listado en basic 
necesario para cargar el pro- 
grama en la memoria de la 
MSX. Los caracteres inver- 


SCREEN. Para recuperarlos, 
basta con hacer un DEF USR 
= D000 y un PRINT USR 
(0). (Por supuesto, apretan- 
do la tecla Return luego de 
cada una de estas instruc- 
ciones). : 

VELOCIDAD 

Si dibujamos un rectangulo y 
luego queremos pintado con al- 
guno de los 1 6 colores que nos 
proporciona nuestra MSX, nor- 


Figura 1 


10 SCREEN 2 

20 LINE (0, 0) - ( 100, 100) ill) BF 
30 GOTO 30 


Figura 2 


10 SCREEN 2 

20 LINE (0, 0) - { 100, 100) , , B 
30 PAINT (30,50) ,11 
40 GOTO 40 


Debemos tener presente que a 
la sentencia LINE se le puede 
agregar el parametro BF que 
justamente, le indica al sistema 
que se trata de un rectangulo 
pintado en su interior. 

En la figura 2 , mostramos co- 
mo seria el programa con LI- 
NE y PAINT, en cambio en la 
figura I , solo se emplea LINE. 

Al ejecutar ambos programas, 
notaremos la diferencia de eje- 
cucion entre ambos. 


tidos disenados con este pro- 
grama se borran apenas e- 
jecutemos alguna orden 


malmente nos indinamos por 
utilizar las sentencias LINE y 
PAINT. 


Pero esta no es la mejor for- 
ma, pues consume demasiado 
tiempo. 


Esto es aconsejable tenerlo pre- 
sente cuando realicemos pro- 
gramas con graficos. 


1 0 DATA3E , 20 ? 32 ? 90 ? DO ? 3E ? E ? 32 ? 9 
1,00,21, 8, A, 11, 58, DO? 6? 1A?C5?D5 
20 DAT ACD ? 3E ? DO ? D 1 ? C 1 ? F5 ? 1 A ? 32 ? 9 
0, DO, 13? 1A? 32? 91? DO? 13? FI? 10?EB?2 
1 

30 DATAO ? 9 ? CD ? 3E ? DO ? 3E ? 98 ? 32 ? 90 ? 
DO? 3E? F? 32? 91 ? DO? 21 ? 68? 9? CD? 3E 
40 DATADO ? C9? 6? 8? ED? 5B? 90 ? DO ? CD ? 

4 A ? 0 ? 2F? E5? CD? 51 ? DO? El ? 23? 10? F4 
50 DAT AC9 ? D5 ? E 1 ? CD ? 4D ? 0 ? 1 3 ? C9 ? 88 


? 8 ,-E0 ? D ? 38 ? t. ? 68 ? E ? AO ? 8 ? A 8 ? 8 

60 DATA98 ? 8 ? EO ? E ? 30 ? E? E8? E? 40 ? E ? 

58? 8? D8? 8? 10, E, D8? E? 60? E 

70 DATACO ? 8 ? 90 ? E ? 90 ? 8 ? 0 ? E ? DO ? 8 ? 7 

8 ? E ? EO ? 8 ? C8 ? 8 ? 78 ? 8? 90 ? F 

80 F OR A=&HD000T 0&HD08 B 

90 READ B$ 

100 POKE A? VAL < "8cH"+B$> 

110 NEXT 

120 DEF USR=8cHD000 
130 PR I NTUSR < 0 ) 









TEST MATEMATICO 


ste programa esta pensado pa- 
ra ayudar a repasar los calcu- 
los matematicos a los chicos 
que esten cursando la escuela primaria. 
Por medio de un menu que aparece en 
pantalla, se pueden seleccionar alternati- 
vas: repasar las sumas, restas, multipli- 
caciones, o bien practicarlas 
Para quienes tienen una impresora co- 
nectada a su MSX, el software tambien 
les permite imprimir sobre papel las ta- 
blas de multiplicacion 

VARIABLES IMPORT - 
TAHTiSi 

Z* opcion escogida del menu 


CLASE: EDUCATIVO 


1- Multiplicacion 

2- Suma 

3- Resta 

4- Tablas de 
multiplicacion 

? +W 


S%: numero de respuestas correctas ' 
Ns numero de cuentas en total 
A: respuesta de la cuenta dada por el ; 
usuario 

ESTRUCTURA PEL 
PROGRAMA: 

10-250: pantalla de presentation 
260-360: mensaje inicial 
370-410: menu 
420-430: eleccion de la opcion 
440-600: rutina de multiplicacion 
6 1 0-760: rutina de suma 
770-930: rutina de resta 
940-1300: rutina para las tablas de 
multiplicacion 



10 SCREEN 2*2*0* COLOR 4*15*1 
20 KEY OFF 
30 CLS 

40 FOR T=1 TO 32* READ D 
50 S*=S*+CHR*(D) 

60 NEXT T 
70 SPRITE*<1>=S* 

80 PUT SPRITE 1* (0* 192) *7* 1 
90 DATA 7*13*30*13,5*1*15*17,17* 
17*57* 1*7*7* 0*0 

100 DATA 224*176*120*176*160*128 
*240*72*72*72*92*64, 112* 112*0*0 
110 A*="TEST MATEMATICO" 

120 OPEN " GRP FOR OUTPUT AS#1 

130 FOR VE=1 TO 7: PLAY"s8m900cde 

f g" : NEXT VE 

140 FOR X=1 TO 255 

150 PUT SPRITE 1 * (X* 5) * 1 * 1 

160 Y=0s IF X/15=INT (X/15) THEN Y 

~X/ 15 

170 IF Y>0 THEN B*=MID* (A** Y* 1 ) : 
PRESET (X* 5) : PRINT#1 * B$ 

180 NEXT X 

190 PLAY " s8m900c d e f g " 

200 A*=" LOAD MSX" 

210 FOR X=1 TO 255 

220 PUT SPRITE 1*<X*30),1*1 

230 Y=0: IF X/10=INT (X/10) THEN Y 

=X/10 

240 IF Y>0 THEN B$=MID$ ( A$* Y* 1) : 
PRESET (X* 30) s PR I NT# 1 * B$ 

250 NEXT X 
260 SCREEN 0 

270 LOCATE 9* 3: PR I NT "TEST MATEMA 
TICO": LOCATE 9* 4: PRINT" 


280 LOCATE 10* 6: PRINT" LOAD MSX" 
290 LOCATE 0*9 

300 PRINT"E1 objetivo de este j u 
ego es princi-" 

310 PRINT : PR I NT "pal men t e educat i 
vo- Ensena cuen tas" * * * "mat em£t i ca 
s simples." 

320 PRINT: PRINT"TU debes tratar 
de cont estarlas" 

330 PRINT: PRINT"y obtendras el p 
untaje merecido." 

340 PR I NT : PR I NT "El puntaje se da 
rd luego de 10 " 

350 PRINT : PRINT "cuen tas . " 

360 FOR X=0 TO 4500: NEXT 
370 PLAY " s8m900c d e f g " 

380 CLS '-COLOR 2 

390 LOCATE 2*4: PR I NT" Me nQ" : LOCAT 

E 2* 5: PRINT" " 

400 PRINT" 1- Mul t i pi i cac i 6n" : PRI 
NT : PR I NT " 2- Suma ": PR I NT : PR I NT " 3- 
Resta": PR I NT : PR I NT " 4— Tablas de m 
ul t i pi i cac i 6n" 

410 PRINT: PRINT: INPUT Z 


420 ON Z GOTO 440*610*770*940 

430 IF ZOl OR Z< >2 OR Z<>3 OR Z 

04 THEN 400 

440 SX=0:N=0 

450 COLOR 10 

460 FOR Z=1 TO 10 

470 CLS 

480 X=INT(RND<1)*12+1) 

490 Y=INT (RND ( 1 ) *12+1 ) 

500 LOCATE 2* 0: PRINTZ; "6Cu4n t o e 

_ II. V. II y »l Y« 

510* PRINT: INPUT A 
520 IF A=X*Y THEN LOCATE 2, 4: PRI 
NT"Muy bien! ! " : SX=S%+1 : N=N+1 
530 IF AOX*Y THEN LOCATE 2* 4: PR 
INT"mala suer te !! ":N=N+1: LOCATE 2 
*8:PRINT"La respuesta correcta es 
: ";X*Y 

540 FOR A=0 TO 1000: NEXT 
550 NEXT Z 
560 CLS 

570 LOCATE 2*4:PRINT"Tu puntaje 
total sobre 10 fue: ";S% 

580 FOR D=0 TO 2000: NEXT 
590 PLAY"s8m900cdefg" 

600 FOR Y=0 TO 1000: NEXT: RUN 

610 S%=0:N=0 

620 FOR Z=1 TO 10 

630 CLS 

640 X=INT(RND<1)*50+1) 

650 Y=INT (RND ( 1 ) *50+1 ) 

660 LOCATE 2*0:PRINT Z; ” 6Cudnto 
es " 5 X 5 " + "jY;"?" 

670 PRINT: INPUT A 

680 IF A=X+Y THEN LOCATE 2* 4: PRI 

NT" Cor recto! ! " : SX=SX+1 : N=N+1 

690 IF AOX+Y THEN LOCATE 2, 4: PR 

INT" Mall ! ! " : N=N+1 : LOCATE 2*8:PR 

INT" La respuesta era: " 5 X+Y 

700 FOR A=0 TO 1000: NEXT 

710 NEXT Z 

720 CLS: COLOR 8 

730 LOCATE 2* 4* PRINT"Tu puntaje 
total es; ";S% 

740 FOR D=0 TO 2000: NEXT 
750 PLAY " s8m900c d e f g " 

760 RUN 

770 SX=0:N=0 

780 FOR Z=1 TO 10 

790 CLS: COLOR 7 

800 X=INT (RND ( 1 ) *100+1 ) 

810 Y=INT(RND(1)*100+1) 

820 IF Y>X THEN 800 

830 LOCATE 2* 0:PRINTZ; "6Cu4nto e 

s: " ? X 5 " - " ; Y; "?" 

840 PRINT: INPUT A 
850 IF A=X-Y THEN LOCATE 2* 4: PRI 
NT"Muy bien* te f el i c i t o" : SX=S%+1 
s N=N+1 

860 IF AOX-Y THEN LOCATE 2, 4: PR 


INT"Mal * mal !! ":N=N+l: LOCATE 2*8: 
PR I NT "la respuesta era:";X-Y 
870 FOR A=0 TO 1000: NEXT 
880 NEXT Z 
890 CLS: COLOR 6 

900 LOCATE 0*4:PRINT"E1 puntaje 
total que mereces es: " 5 SX: PRINT"s 
□bre 10" 

910 FOR D=0 TO 2000: NEXT 
920 PLAY " s8m900c d e f q " 

930 RUN 

940 CLS: COLOR 1 

950 LOCATE 2,3: PRINT"6Qu6 tabla 
de mul t i pi i cac i dn deseas repasar^ 
(del 1 al 12)" 

960 LULA I L 3*6«FK1NI "Lntra solo 
el n&mero" : PRINT" 

970 INPUT Z 
980 CLS 

990 FOR X=1 TO 12 
1000 COLOR 8 

1010 LOCATE 0*X: PRINT X: LOCATE 3 
* X : PR I NT " X " : LOCATE 4 * X : PR I NTZ : LOC 
ATE 7, X: PRINT"-" J LOCATE 8* Xi PRINT 
X*Z 

1020 NEXT X 

1030 LOCATE 0* 14: PRINT"6Querds 0 
btener un listado en papel de la 
tab la?": LOCATE o* 16: PRINT" 1-SI "* " 
O-NO" 

1040 INPUT P 


1050 

IF 

P=0 

THEN PLAY " s8m900c d e f 

g " : RUN 



1060 

IF 

P=1 

THEN 1070 

1070 

IF 

Z=1 

THEN A*="uno" 

1080 

IF 

Z=2 

THEN A^="dos" 

1090 

IF 

Z=3 

THEN A$=" t res" 

1100 

IF 

Z=4 

THEN A$="cuatro" 

1110 

IF 

Z=5 

THEN A^=" cinco" 

1120 

IF 

Z=6 

THEN A$="se i s" 

1130 

IF 

Z=7 

THEN A^="siete" 

1140 

IF 

Z=8 

THEN A^=" ocho" 

1150 

IF 

Z=9 

THEN A$="nueve" 

1160 

IF 

Z=10 THEN A^="d i ez n 

1170 

IF 

Z-ll 

THEN A$="once" 

1180 

IF 

Z=12 THEN ft$="doce" 

1190 

LPRINT 

CHR^ ( &H 1 B ) +' " c " : LPR I N 

TCHR*(&H12> 


1200 

LPRINT 

"Tabla del " ; A$ 

1210 

FOR 

X=1 

TO 9 

1220 

LPRINT 

CHR$ ( S<H 1 B ) + " c " 

1230 

LPRINT 

" " ; X ; " x " ; Z ; " = " ; 

X*Z 




1240 

NEXT X 


1250 

FOR 

X=10 TO 12 

1260 

LPRINT 

CHR*<8tHlB)+ M c" 

1270 

LPRINT 

X;" x " ;Z;“ = ";X*Z 

1280 

NEXT X 


1290 

PLAY " s8m900c d e f g " 

1300 

RUN 









Clase: comer dal 


FICHERO MSX 




ste es un programa Basic de al- 
ta calidad que nos permite 
crear un fichero para lo que 
necesitemos. Asi, gracias a nuestra 
MSX, podemos tener clasificada y or- 
denada nuestra discoteca o biblioteca, 
o una lista de proveedores, o nuestro 
indice telefonico, asi como las direccio- 
nes de nuestros amigos y conocidos. Se- 
guro que una vez que empiecen a usar 
el fichero, le encontraran mil utilidades 
mas. 


Los datos pueden ser almacenados en 
diskette si es que la maquina tiene una 
disquetera conectada. De lo contrario, 

delreran ser almacenados en cassettes. 
Si se usa disquetera, al correr el progra- 
ma se deben ignorar los mensajes en re- 
lacion al cassette que apareceran en la 
pantalla (poner Play, etcetera), y cuan- 
do aparezcan solo habra que preparar 
el diskette y presionar cualquier tecla. 
El programa acepta hasta 300 fichas, los 



tipos de datos que ir&n en cada ficha. Po- 
demos decidir al usar el programa, cuan- 
do la maquina nos pregunte por los 
items o titulos. Asi, si queremos hacer 
un indice telefonico, llamaremos a los 
titulos Nombre, Apellido, Direccion, 
etcetera. Puede haber hasta 1 5 titulos 
por ficha, pero los titulos son los mis- 
mos para todas las fichas. 

El programa tiene un menu desde don- 
de se puede ir a las partes destinadas a 
creacion de las fichas, modificaciones. 


10 KE YOFF s SCREENO s W I DTH37 

20 CLEAR 1000 

30 MAXF ILE3=5 

40 TIME=0 

50 COLOR 1,9 

60 CLS: GOTO 1420 

70 CLS 

80 PR I NT 11 Jk **********#^*** 11 
90 PRINT"* *" 

100 PRINT"*' FICHERO *" 

110 PRINT"* *" 

120 PRINT"* POR GUSTAVO *" 

130 PRINT"* FAIGENBAUM *" 

1 40 PR I NT " ***************** " 

150 RETURN 

160 ’ CREACION DE LAS VARIABLES 
170 G0SUB70 

180 INPUT "NOMBRE DEL FICHERO A 

CREAR" ; NF*: IFLEN (NF*) =0THEN180 

190 INPUT "NUMERO DE ITEMS (mAx i 

mo 15) " ; ND 

200 I FND > 1 5THEN 1 90 

210 IFNDO0THEN190 

220 INPUT "NUMERO DE FICHAS (M Ax 

imo 300) ";NF 

230 I FNF >3000RNF< 1 THEN220 
240 PRINT"Los datos entrados son 
correctos (s/n)" 

250 R*= INPUT* ( 1 ) 

260 I FR*= " n " 0RR*= " N "THENPR I NT " r e 

com i ence" : GOTO 160 

270 I FR* X " s " ANDR* X " S " THEN250EL 

SE330 

280 ’creacion de los vectores 
290 IF RW*="*"THEN320 
300 DIM LA* (ND) jNKNFj ND) 7 XG* (NF 
+1) , XH(NF+1) 

310 RW*="*“ 

320 RETURN 

330 ’creacidn de los titulos 
340 GOSUB 70s GOSUB 280 
350 PRINT"MAx imo por titulos 15 
carac teres" 

360 FOR I=1T0ND 

370 PRINT"Ti tulo"; I; : INPUT LB* 
380 IFLB*=" "THEN370 
390 I FLEN ( LB* ) > 1 -5THEN370 
400 FORI 1=1T015— LEN (LB*) 

410 LB*=LB*+" ." 


420 NEXT II 

430 LA* < I ) =LB* : Lfe*= " " 

440 NEXT I 

450 ’visual izacion de los titulo 
s 

460 GOSUB 70 

470 F0RI=1T0ND 

480 PR I NT I ; " " ; LA* ( I ) 

490 NEXT I 

500 PRINT"Los datos entrados son 
correctos (s/n) " 

510 R*= INPUT* ( 1 ) 

520 I FR*= " n " 0RR*= " N " THENPR I NT " r e 

com i ence" : GuKJ 54u 

530 I FR* X " s " ANDR* X " S " THEN5 1 OEL 

SE630 

540 PRINT"Qu£ titulo quiere camb 
iar (ntimero) " s INPUT R 
550 IFR>ND0RR< 1THEN 540 
560 PRINT"Ti tulo";R; : INPUT LB* 

570 IF LEN (LB*) >15QRLEN (LB*) =0TH 
EN560 

580 FOR I 1 = 1TQ 15-LEN (LB*) 

590 LB*=LB*+" ." 

600 NEXT II 

610 LA* ( R > =LB* • LB*= " " 

620 G0T0470 

630 ’creacion de las fichas 
640 DF=1 

650 F0RI=DFT0 NF 
660 GOSUB 70 

670 PRINT"No te olvides de tecle 
ar fin dentro de " ; LA* ( 1 ) 5 " si t 
erm i naste" 

680 PR I NT "FICHA NUMERO"; I 
690 F0RB=1T0ND 

700 PRINTB; : PRINTSPC (3-LEN (STR* ( 
B) ) )LA*(B) ; 

710 INPUTN1* 

720 IFN1*=" "THEN 700 
730 IF N 1 *= " F I N " ORN 1 *= " f i n " THEN9 
20 

740 N* ( 1 7 B ) =N 1 * : N 1 *= " " 

750 NEXTB 
760 G0SUB70 
770 F0RB=1T0ND 

780 PRINTB; : PRINTSPC (3-LEN (STR* ( 
B) ) ) LA* (B> ; 




ordenamiento, visualizacion, impresion, 
etcetera. 

Recomendamos al terminar de trabajar 
con un fichero, antes de empezar a tra- 
bajar con otro, ir primero a la opcion 
7 del menu (Fin) y luego volver a poner 
Run. 

Las variables mas importantes son: 
NFS . . . Nombre del fichero 

NF Cantidad de fichas 

LAS(N) Titulos de los items 
ND .... Cantidad de items 
N$(M,N) Datos 


Damos a continuacion los numeros de 
linea en que comienzan las principales ru- 
tinas del programa. 


60 - creacion de un nuevo fichero 

1420 - display menu principal 
1 660 - modificacion de las fichas ya 
existentes 

1890 - creacion de nuevas fichas 

2080 - averiguar y buscar datos en las 

fichas ya existentes 

2680 - ordenamiento alfabetico 

3260 - listado del contenido de las 

fichas 

2460 - finalizacion 


790 PRINTNi ( I , B) 

800 NEXTB 

810 PRINT" 6 dat os correctos? (s/n 

> " 

820 R*= INPUT* ( 1 ) 

830 IFR*="S"0RR*="s"THEN900 
840 I FR* X " n " ANDR* X " N " THEN820 
850 PRINT"Qu 6 nQmero" : INPUT B2 
860 IFB2< 10RB2>NDTHEN850 
870 PRINTB2; SPC (3-LEN (STR* (B> ) ) L 
A* ( B2 ) ; 

880 INPUT N* ( I r B2) 

890 GOTO 760 
900 NU=I 
910 NEXTI 

920 ’guardar en cassette o diske 
t te 

930 CLS: GOSUB 1100 
940 I FNU=OTHENNU=NF 
950 OPEN NF* FOR OUTPUT AS 1 
960 NU*=STR* ( NU > : ND*=STR* ( ND ) 

970 PRINT#1 , NU*: PRINT#1 , ND* ’ 

980 F0RI=1T0ND 
990 PR I NT # 1 7 LA* ( I ) 

1000 NEXT I 
1010 F0RI=1T0NU 
1020 N*(I,0)=STR*(I) 

1030 FGRB=0T0ND 
1040 PR I NT # 1 ? N* ( 1 7 B ) 

1050 NEXT B 
1060 NEXT I 
1070 CLOSE 1 
1080 GOTO 3390 
1090 GOTO 1420 

1100 ’ i ntroducc i 6 n del cassette 
para registro 

1110 PR I NT "REBOB I NE EL CASSETTE 
V PRESIONE UNA TECLA" 

1120 R*= INPUT* ( 1 ) : MOTOR ON 
1130 PRINT"PONGA AL CASSETTE EN 
’PLAY’ Y ’REC’ Y PRESIONE UNA TEC 
LA" 

1140 R*= INPUT* ( 1 ) 

1150 RETURN 

1160 ’LECTURA DEL CASSETTE 0 DIS 
KETTE 

1170 I FNF*=“" THEN INPUT "NOMBRE DE 
L FICHERO" ; NF* 





1180 GOSUB 1350 

1190 OPEN NF* FOR INPUT AS 1 

1200 INPUT # 1 , NU* s I NPUT # 1 , ND* 

1210 NF=VAL(NU*) 

1220 ND=VAL(ND*) 

1230 I FR V*= " ** " THEN GOSUB 1940 

1240 GOSUB 280 

1250 F0RI=1T0VAL(ND*) 

1260 INPUT#1,LA*(I) 

1270 NEXT I 

1280 F0RI=1T0VAL(NU*) 

1290 FORB=OTOVAL (ND*) 

1300 INPUT#1,N*(I,B) 

1310 NEXTB 

1320 NEXT I 

1330 CLOSE is RETURN 

1340 7 introduction del cassette 

1350 G0SUB70 

1 360 PR I NT " Re b a b i n e el cassette. 

Cuando est6 listo presione un 
a tecla" 

1370 R*=INPUT*(1) 

1380 MOTOR ON 

1390 PRINT "Ponga al cassette en 
’PLAY’ y luego presione una tecl 
a" 

1400 R*=INPUT* ( 1 ) 

1410 RETURN 

1420 CLSs * presen tac i 6n 
1430 PRINT 

1440 PRINT" MENU DEL PROGRAM 

A" 

1450 PRINT" **************** 

^ II 

1460 PRINT 

1470 PRINT" 1 ■ CREACION DE UN FIC 
HERO" 

1480 PRINT 

1490 PRINT"2. MODIFICACION DEL F 
ICHERO" 

1500 PRINT 

1510 PRINT"3. CREAR NUEVAS FICHA 
S" 

1520 PRINT 

1530 PR I NT "4. INTERR06AR" 

1540 PRINT 

1550 PR I NT "5. LISTADO ALFABETICO 

II 

1560 PRINT 

1570 PRINT "6 . LISTADO DE TODAS L 
AS FICHAS" 

1580 PRINT 

1590 PR I NT " 7 ■ FINAL" 

1600 PRINT 

1610 PRINT" 6CuAl es su opcidn"; 
1620 INPUTR* 

1 630 I FR* > " 7 " ORR*< " 1 "THEN 1 420 
1640 CLSs ON VAL (R*) GOTO 160,1660 
, 1 890 , 2080 , 2680 , 3260 , 3460 
1650 7 mod i f i cac i 6n del fichero 
1660 I FND > 1 THEN 1 680 
1670 GOSUB 1160 
1680 GOSUB 70 
1690 PRINT 

1700 PRINT"si terminaste pedi ot 
ra ficha y tecleA un 99 

6Qu6 ficha qu 

er§s mod i f i car" ; 

1710 INPUT MF* 

1720 MF=VAL(MF*) 

1730 IF MF< 10RMF>NFTHEN1700 
1740 GOSUB 70 
1750 F0RI=1T0ND 

1/60 PR1NISPC(3') 1;LA*U> 5N$(MF,I 
) 

1770 NEXTI 

1780 PR I NT "s i terminaste las mod 
ificaciones entrA un 99" 

1790 PR I NT "Qu 6 item vas a modifi 
car " 

1800 INPUT B2* 

1810 B2=VAL(B2*) 

1820 I FB2=99THEN920 
1830 I FB2< 1 0RB2 >NDTHEN 1780 
1840 PR I NTSPC ( 3 ) ; LA* ( B2 > 5 s I NPUT 
N*(MF,B2) 

1850 PRINT"<Ldatos correctos? (S/ 
N) " 

1860 R*=INPUT* ( 1 ) 

1 870 I FR*= " n " ORR*= " N " THEN 1 780 
1 880 I FR* X " s " ANDR* X " S " THEN 1 860 
ELSE 1700 

1890 'crear nuevas fichas 


1900 RUN 1910 
1910 RU*="**" 

1920 CLSs GOSUB 1160 
1930 G0T0650 

1940 7 numer o de fichas a crear 
1950 GOSUB 70 

1960 PR I NT "hay " ; NF; " f i chas" 

197© PRINT"cuan tas querns crear" 
1910 INPUT NA 

1990 IF NA=OTHENPRINT"f in del tr 
aba j •" s GOTO 1420 

2000 IF NA+NF>300THENPRINT" impos 

i bl e" s GOTO 1970 

2010 PRINT“seguro? (s/n)" 

2020 R*=INPUT*(1) 

2030 I FR*= " S " ORR*= " s " THEN2050 
2040 IF R*= ,, n"0RR*="N"THEN1950EL 
SE2020 

2050 NF=NF+NA : DF=NF-NA+ 1 
2060 RETURN 

2070 7 interrogar las fichas 
2080 IF NF>1THEN2100 
2090 GOSUB 1160 
2100 GOSUB 2300 
2110 I FCH*= " 2 " THEN2390 
2120 G0SUB70 

2130 7 i nt errogac i 6n por nGmero d 
e ficha 

2140 INPUT"Qu4 ficha querns list 
ar " ; NL 

2150 IF NL< 10RNL>NFTHENG0T0 2140 

2160 GOSUB 3150 

2170 OPEN TE*FOR OUTPUT AS2 

2180 PRINT#2, "FICHA NUMERO" ; NL 

2190 F0RB=1T0 ND 

2200 PRINT#2, SPC (3) LAS (B) ; N* (NL, 

B) 

2210 NEXTB 
2220 CL0SE2 

2230 PRINT"pres i one una tecla pa 
ra continuar" 

2240 R*=INPUT*(1) 

2250 PRINT"Ot ra ficha? (s/n)" 

2260 R*=INPUT*(1) 

2270 IFR*="S"0RR*="s"THEN2140 
2280 I FR*= M n " ORR*=" N " THEN 1 420 
2290 GOTO 2250 

2300 ’eleccion de la interrogaci 
6n 

2310 G0SUB70 

2320 PRINT" 1. ndmero de ficha" 
2330 PRINT" 2. un dato" 

2340 PR I NT "OPR IMA EL NUMERO DE S 
U ELECCION (1/2)" 

2350 INPUT R* 

2360 IFR*=" 1 "THEN CH*=" 1 " s RETURN 
2370 I FR*= " 2 " THENCH*= " 2 " s RETURN 
2380 GOTO 2350 

2390 - 7 T NTERRGGAC xON POR DATOS 
2400 GOSUB 70 
2410 F0RI=1T0ND 
2420 PRINTSPC (3) 1 5 LA* ( I ) 

2430 NEXTI 

2440 PRINT"Que criterio de selec 
c i 6n deseAs" 

2450 INPUT W 

2460 IF W< 10RW>NDTHEN2440 
2470 PRINT"6Qu* dato buscAs?" 

2480 INPUT DR* 

2490 I FDR*= " " THEN2470 
2500 F0RI=1T0NF 

2510 IF N*(I,W)=DR*THENG0SUB2570 
s NEXTI SG0T02540 
2520 NEXTI 

2530 PRINT"No hay mAs datos " ; DR 
*sPRINT"en la raemoria bajo el tit 
ul o " ; W 

2540 PRINT" pres i one una tecla" 
2550 A*=INPUT*(1) 

2560 GOTO 1420 
2570 7 sel ecc i 6n 
2580 GOSUB 3150 
2590 OPEN TE*FOR OUTPUT AS 4 
2600 PRINT#4, "FICHA NUMERO ";N*( 
1 , 0 ) 

2610 F0RB=1T0ND 

2620 PRINT#4, SPC (3) LA* (B) " N* ( I , B 
) 

2630 NEXTB 
2640 CL0SE4 

2650 PRINT"pul se cualquier tecla 
para seguir" 

2660 R*=INPUT* ( 1 ) 


2670 RETURN | : 

2680 ’listado alfabetico 
2690 IF NDMTHEN2710 | i 

2700 GOSUB 1160 : 

2710 GOSUB 70 

2720 PRINTS PRINTS PRINT r 

2730 F0RI=1T0ND 

2740 PRINTSPC (3) I ; LA* ( I ) 

2750 NEXTI ' = 

2760 PRINT"Qu6 criterio de orden 
amiento" • 

2770 INPUTW 

2780 IFW>NDORW< 1THEN2710 * 

2790 G0SUB2940 ! ’ 

2800 G0SUB3150 
2810 OPEN TE*FOR OUTPUT AS3 
2820 F0RI=1T0XI 
2830 G0SUB703 PRINT 
2840 PRINT#3, "orden"; I 
2850 PRINT#3, "n6mero" , N* (XH ( I ) ,0 
) 

2860 F0RB=1T0ND 

2870 PRINTH3, SPC (3) LA* (B) ; N* (XH ( 

I) ,B> 

2880 NEXTB 

2890 PRINT“para seguir presione 
una tecla" 

2900 R*=INPUT* ( 1 ) 

2910 NEXTI 
2920 CL0SE#3 
2930 GOTO 1420 
2940 7 alfabetico 
2950 XD=NF 
2960 XI=0 
2970 F0RI=1T0NF 

2980 XI=XI+lsXG*(XI)=N*(XI,W)sXH 

(XI)=I 

2990 NEXTI 

3000 K=X I 

3010 XD=0 

3020 F0RI=1T0K-1 

3030 I F XG* ( I-*- 1 ) < XG* ( I ) THEN3050 

3040 GOTO 3120 

3050 

3060 XG* ( I ) =XG* ( 1+1 ) 

3070 XG* ( 1+1 ) =X J* 

3080 XF=XH ( I ) 

3090 XH ( I ) =XH ( 1+1 ) 

3100 XH ( 1+1 ) =XF 
3110 XD=1 
3120 NEXTI 

3130 IFXD=1THENK=K— 1 s G0T03010 
3140 RETURN 

3150 7 seleccion para lectura 
3160 ’pantalla e impresora 
3170 G0SUB70 

3180 PRINT“Desea listars" 

3190 PRINT" 1. en pantalla" 

3200 PRINT" 2. en impresora" 

3210 INPUT R* 

3220 IFR*=" 1 "THENTE*=" c r t s » s RETU 
RN 

3230 I FRf = " 2 " THENTE*= " 1 p t s " s RETU 
RN 

3240 GOTO 3180 

3250 7 1 i stado de fichas 

3260 IFND>1THEN3280 

3270 GOSUB 1160 

3280 G0SUB3190 

3290 OPEN TE*FOR OUTPUT AS 5 
3300 FORD=lTONFsGOSUB70sPRINT#5, 
"ficha n6mero";D 
3310 F0RB=1T0ND 

3320 PRINT#5, SPC (3) LA* (B) ;N*(D,B 
) 

3330 NEXTB 

3340 PRINT"Para continuar presio 
ne una tecla" 

3350 R*=INPUT* ( 1 ) 

3360 NEXTD 

3370 CL0SE5 

3380 GOTO 1420 

3390 7 cop i a del fichero 

3400 G0SUB70 

3410 PRINT"Qu i ere una copia del 
f i chero"; 

3420 R*=INPUT*(l) 

3430 I FR*= " s " ORR*= " S " THEN920 
3440 I FR*= " n " ORR*= " N " THEN 1 420 
3450 GOTO 3420 
3460 G0SUB70 
3470 PRINT"chau" 

3480 END 




ASSEMBLER 4* NOTA j 

UNA VENTANA 


EN LA PANTALLA 

Gracias a la instruccion LD, 

una de 

las mas simples del assembler , po- 
dremos hacer un programa que 

abre una ventana. 





D es la abreviatura de la pala- 
bra LoaD, que en ingles signi- 
fica ‘cargar’. La forma mas fa- 
cil de entender la funcion de esta ins- 
truccion es compararla con la instruc- 
cion Basic LEFT, que permite poner un 
valor en una variable. 


LET A = BO 
© bien: 

A= 10 

En Assembler, el equivalente 
seria: 

LD A, 1 0 

Claro que muchas personas estaran pen- 
sando como hacer para entrar esta ulti- 
ma instruccion en sus maquinas, que solo 
aceptan ordenes Basic y que darian un 
Syntax Error ante cualquier LD. Les pe- 
dimos un poco de paciencia: ya veremos 
como entrar estas ordenes a nuestra 
MSX sin necesidad de ningun programa 
ensamblador ni nada similar (aunque si 
lo tenemos mejor). 

Terminando de definir a la instruccion 
LD, digamos que permite colocar nume- 
ros en los registros internos del micro- 
procesador (registro: equivalente a la 
variable del Basic), copiar el dato de un 
registro en otro o en alguna direccion 
de memoria y copiar el contenido de 
una direccion de memoria en un regis- 
tro. Esto quiere decir que si bien en As- 


sembler trabajamos con solo unos pocos 
registros ya creados (generalmente 7 u 
8, a diferencia del Basic donde podemos 
‘inventar’ nuestras propias variables) gra- 
cias a la instruccion LD podemos cargar 
en ellos ‘trocitos’ de la memoria de 
nuestra maquina (y viceversa). 

Estos ‘trocitos’ a los que nos referimos 
son los bytes. Imaginemoslos como pe- 
quenas cajitas, cada una de las cuales tie- 
ne un nombre y en cuyo interior se 
puede guardar un numero entre 0 y 
255. El nombre de estos bytes que for- 
man la memoria tambien es un numero 
que puede estar entre 0 y 65535. 
Pero veamos ahora las instrucciones LD 
que tenemos para cargar un numero en 
un registro. (ver figura I). 

Figura 1 


ISNTRUCCION 

CODIGO 

LD 

A,dato 

3E 

LD 

B,dato 

©6 

LD 

C,dato 

0E 

LD 

D,dato 

16 

LD 

E,dato 

IE 

LD 

H.dato 

26 

LD 

L,dato 

2E 


En realidad, lo que entramos en la ma- 
quina no es la instruccion LD directa- 
mente sino el codigo que la representa. 


El codigo no es mas que un numero, pe 
ro en vez de estar representado en el 
sistema decimal (digitos del 0 al 9) esta 
en hexadecimal (digitos del 0 a la F). No 
se asusten quienes no conozcan este sis- 
tema de numeracion, la computadora lo 
entiende perfectamente con tal de po- 
ner un &H antes de un numero hexa- 
decimal. 

Vamos a hacer ahora un programa en 
assembler que cargue en el registro B 
el numero 0 y en el C el 1 28. Todo pro- 
grama en assembler debe ser ubicado en 
la memoria de la maquina. El nuestro lo 
pondremos a partir del byte numero 
50000. 

PROGRAMA: 

LD B,0 
LD C,I28 
RET 

La instruccion RET (abreviatura de RE- 
Turn) significa que nuestro programa ha 
terminado (equivafente en Basic a END 
o STOP). En assembler, un programa al 
ser ejecutado NO para automaticamen- 
te despues de la ultima instruccion, sino 
que si no hay un RET seguira intentan- 
do interpretar las siguientes regiones de 
memoria, que no tienen sentido. En es- 
te caso, el programa no se detiene ni 
siquiera con las teclas Control y Stop, 
y habria que apagar y volver a encen- 
der la computadora. 

Vamos a transformar a las instrucciones 
en sus codigos. 

Como veran, las instrucciones LD RE- 
GISTRO, DATO ocupan 2 bytes, uno 
para la instruccion y otro para el dato 
(que a la derecha lo hemos pasado a he- 
xadecimal^ I28 = &H80). Podemos 
colocar ahora nuestro programa a par- 
ti r de la memoria 50000 por medio de 
pokes: 

POKE SOOOO, &H06 
POKE SOOOI ,&H00 
POKE 50002, &HOE 
POKE 50003, &H80 
POKE 50004, &HC9 

En realidad no tiene mucha gracia eje- 
cutar este programa, porque tenemos 
que hacerlo desde Basic, y no sabemos 
ningun metodo para comprobar si an- 
duvo bien, es decir, si los registros se 
cargaron con los valores que pusimos. 
De todos modos, si alguien tiene ganas 
de hacerlo, el equivalente al RUN se lo- 
gra tecleando: 




DEF USR = 50000 

(que equivale a decirle a la maquina: 
nuestro programa empieza en la posi- 
cion de memoria numero 50000) 

A = USR (0) 

(que es como poner RUN al programa 
que esta en la posicion de memoria que 
pusimos en DEF USR). 

Si todo va bien, el programa se ejecuta- 
ra rapidisimo, y el Ok y el cursor apa- 
receran en la pantalla. Esto significa que 
el programa que hicimos en assembler 
se ha ejecutado como si fuera una su- 
brutina del Basic, volviendo, al finalizar, 
a donde estaba antes de empezar. 
Tambien podemos cargar directamente 
pares de registros. En este caso, cada 
instruccion tiene 3 bytes, I para el co- 
digo de operacion y 2 para el numero 
que tendra 1 6 bits. 

INSTRUCCION CODIGO 

LD R€,dato © l(+ 2 bytes 
para el dat®) 

LD DE,dat® 1 1 (+ 2 bytes 
para el dato) 

LD HL,dat@ 21 (+ 2 bytes 
para el dato) 

Hagamos el programa 


truccion analoga, que funciona solo con 
el registro A: 

LD A, (DO®©) 

cuyo codigo es 3A mas dos bytes para 
la direccion. Los parentesis indican esta 
idea: copiamos en el A el contenido de 
la memoria D000. La instruccion LD 
A,D000 (sin parentesis) no es valida por- 
que no podemos colocar el numero 
D000 (de dos bytes) en un unico regis- 
tro (donde cabe como maximo un 255). 
Esta instruccion equivale a 3 bytes: una 
para el codigo de operacion (en este ca- 
so 3A) y dos para decir cual es la direc- 
cion cuyo contenido vamos a colocar en 
el registro A. 

Inversamente, existe una instruccion pa- 
recida que nos permite escribir en una 
posicion de memoria cualquiera el con- 
tenido del registro A. El codigo de esta 
instruccion es 32 y tambien lleva dos 
bytes para la direccion. Observen este 
programa. 


ASSEMBLER CODIGO DE 
MAQUINA 

LD A, (C@00) 3AOOCO 
LD (COO I )*A 3200CI 
RET €9 


Memoria 

Assembler 

Codigo de 

Maquina 





MEM. 50000 

LD BC,&H002B 

OI2BOO 


MEM. 50003 

RET 

C9 



Noten que cuando pasamos un numero 
de 2 bytes (como el hexadecimal 002B 
que cargamos en el par BC), al escribir- 
lo en cadigo de maquina debemos ‘que- 
brarlo’ en dos partes (la mas significati- 
va y la menos significativa) colocando 
primero la menos significativa (2B) y lue- 
go la mas significativa (00). 

Veremos ahora las instrucciones que nos 
permiten leer y escribir posiciones de 
memoria, lo que nos permite tener a 
nuestra disposicion toda la memoria 
RAM 

En Basic se puede escribir: 

X = PEEK (&HDOOO) 

que significa que la variable X asumira 
un valor entre 0 y 255 que correspon- 
de al que esta en la posicion de memo- 
ria (en hexadecimal) 

&HD000. En assembler existe una ins- 


El programa carga primero en el regis- 
tro A el contenido de la memoria C000 
y luego lo copia en la memoria COO I 
Podemos probar cargar el programa a 
partir de la posicion de memoria D000 
por medio de pokes: 

POKE &HDOOO, &H3A 
POKE &HDOO 1 ,0 
POKE &HD002,&HC0 
POKE &HD003,&H32 
etc. 

Podemos ejecutarlo y verificar si funcio- 
no. Para ello, primero carguemos un nu- 
mero en la memoria &HC000, por 
ejemplo: 

POKE &HC000,208 

Luego ejecutemos nuestro programa 

DEF USR = &HDOOO 
A = USR(O) 


Finalmente, verifiquemos si el programa I 
funciono, haciendo: 

PRINT PEEK (&HCOOI) 

Si todo fue bien, el resultado de esta ins- 
truccion deberia ser 208. 

Vamos a aplicar ahora los conocimien- 
tos que acabamos de adquirir para crear 
una ‘ventanita’ en nuestro televisor. 

La posicion de memoria F3B0 de nues- 
tra maquina tiene un numero que indica 
la cantidad de columnas con las que tra- 
bajamos en la pantalla de texto. La F3B I 
guarda la cantidad de filas (o renglones) 
en que trabajamos. Si las modificamos 
(desde assembler) podremos aumentar 
o disminuir ‘a piaccere’ el tamaho de j 
nuestra pantalla. 

Probemos darle un ancho de 1 0 colum- 
nas y un alto de 1 2 filas. 

CODIGO DE 
MAQUINA 

3EOA 
32BOF3 
3EOC 
32BIF3 
€9 


ASSEMBLER 


LD A» 10 
LD (F3BO),A 
LD A, 12 
LD (FSB I), A 
RET 


Para cargarlo: 

POKE &HDOOO,&H3E 
POKE &HD06 1 ,&HOA 
POKE &HD002,&H32 
POKE &HD003,&HB® 

POKE &HD004,&HF3 
POKE &HD005,&H3E 
POKE &HD006,&H0C 
POKE &HD007,&H 3 2 
POKE &HD008,&HBi 
POKE &HD009,&HF3 
POKE &HD00A,&HC9 

Por fin hemos hecho un programa en as- 
sembler que tiene una utilidad practica 
real y que nos permite ampliar las posi- 
bilidades de nuestro computador. Si que- 
res seguir investigando, proba cambiar 
los valores para obtener otros tamafios 
de pantalla. Fijate que pasa con los nu- 
meros muy chicos o muy grandes, y es- 
tate preparado para tener que soportar 
algunas sorpresas desagradables (tener 
que apagar la maquina y perder un pro- 
grama). Pero el riesgo esta justificado: 
en Assembler, probar es la mejor for- 
ma de aprender. 


GUSTAVO FAIGENBAUM 



Road 



CREATIVIDAD: 8 
PRESENTACION: 8 
ATRACCION: 9 
GRAFICOS: 8 
SONIDO: 8 
TIPO: ENTRETENIMIENTO 
PRODUCE: MICROBYTE 

A cualquiera de nosotros nos gustaria 
participar en un gran Rally Internacional 
de automovilismo. 

Partiremos de la ultima fila (para darles 
un poco de ventaja) y por medio de 
nuestra pericia conductiva, iremos supe- 
rando a nuestros adversaries en la Ca- 
rrera, con los riesgos que implica una 
competencia de este tipo. 

Podremos acelerar, hacer rebajes de ve- 
locidad y, de no hacerlos en forma co- 
rrecta, nos despitaremos con las logicas 
consecuencias. 



Un factor importante sera el combusti- 
ble ya que nuestro mal manejo nos pue- 
de hacer gastarlo de mas y esto nos 
impedira arribar a feliz termino a la 
llegada. 

El gran premio esta dividido en distintas 
etapas con hermosos y cambiantes pai- 


sajes, lo que hace mas apasionante el 
juego. 

Si no se cumple una etapa hay que co- 
menzar todo de nuevo. 

Al llegar a la ultima parte y ganarla nos 
sentiremos con esa modestia que solo 
los grandes pueden tener. 


Numeros 
y letras 



CREATIVIDAD: 7 
PRESENTACION: 7 
ATRACCION: 7 
GRAFICOS: 8 
SONIDO: 8 
TIPO: EDUCATIVO 
PRODUCE: MICROBYTE 

Sentarse frente a la computadora para 
aprender el abecedario puede resultar 
una tarea interesante, si a esta propuesta 
se la combina con una ejercitacion de 
la memoria, con el agregado de poder 
conocer sin ningun esfuerzo los nume- 
ros del I al 10 y la relacion que existe 
entre los numeros y las letras. 

Con una buena grafica los mas chicos de 
la familia podran estudiar asistidos por 
la computadora lo que a veces lleva ho- 
ras aprender en la escuela o hacer un 
repaso de las mismas. 


Elios con todo derecho veran a la ma- 
quina como a una infaltable amiga de es- 
tudios. 

Al finalizar la clase se podra ver como 


el chico avanza en sus estuaios. Tambien 
es interesante saber que en abecedario 
la letra h existe para las computadoras 
MSX. 





IVtr. Wong’s Loopy Laundry 


CREATIVIDAD: 8 
PRESENTACION: 8 
ATRACCION: 9 
GRAFICOS: 8 
SONIDO: 8 
TIPO: ENTRETENIMIENTO 
PRODUCE: MICROBYTE 

Mr. Wong es un simpatico chinito cu/a 
mision es sortear un largo y peligroso 
camino en busca de la ropa de sus clien- 
tes, para poder realizar su trabajo en la 
lavanderia. 

A todo esto sus herramientas, como la 
plancha o el vapor que produce esta, se- 
ran sus enemigos. 

Recorrera un peligroso camino de per- 
secucion en tan loable tarea y eso no 
sera demasiado facil. 

Para los fanaticos de las persecusiones 
este soft es ideal. Con un buen disefio 
grafico, brinda originalidad en los distin- 
tos escenarios donde Mr. Wong se sen- 
tira casi inexorablemente atrapado por 
su vieja pero aun mas traicionera 
plancha. 




CREATIVIDAD: 8 
PRESENTACION: 8 
ATRACCION: 9 
GRAFICOS: 9 
SONIDO: 9 
TIPO: EDUCATIVO 
PRODUCE: MICROBYTE 

Este programa dedicado a los mas pe- 
quefios computomanos, demuestra cla- 
ramente que un software educativo no 
tiene por que ser aburrido. 

En forma de juego, nos obligara a re- 
cordar cada una de las figuras represen- 
tadas y asociadas a un numero 
determinado. 

Con el, padres e hijos podran practicar 
y pasar momentos divertidos. 

En si trata de agilizar nuestra capacidad 
de memoria visual, usando como herra- 
mientas, figuras muy similares y a la vez 


provoca que los mas pequenos ejerci- 
ten o aprendan las formas y relaciones 
entre los numeros en forma extrema- 
damente sencilla y practica. 


Excelentes colores, formas y sonido 
contribuyen a que esto sea, como diji- 
mos al principio, un entrenimiento 
educativo. 



Para comunicarse con nosotros deben escribirnos a “Load 
Revista para Usuarios de MSX”, Parana 720, 5to. Piso, (1017) 


Cap. Federal. 


AGENCIAS DE 
NOTICIAS 


Quisiera felicitarlos por su 
excelente revista y agrade- 
ceries que alguien se ocupe 
de nuestras dudas. 

Me gustaria preguntar si con 
mi MSX puedo comunicar- 
me, a traves del correspon- 
diente modem, con las agen- 
das de noticias extranjeras 
tales como las que describen 
en numeros anteriores de 
LOAD MSX y K 64 y donde 
realizar las correspondien- 
tes gestiones para este 
servicio. 

Tambien deseam saber si 
puedo colocar en la disque- 
tera DPF-550 un disquete 
IBM y si la MSX seria capaz 
de leer los archivos de dicho 
disquete. 

FERNANDO A. GARCIA 
ROSARIO 


LOAD MSX 


Para comunicarte con las 
agendas de noticias, estan las 
bases de datos DELPHI, 
servicio que brinda SISCO- 
TEL, THE SOURCE y 
COMPUSERVE, servicio 
del INFOTEL. 

Con ambas bases podran co- 
municarse con agencias de 
noticias nacionales y 
extranjeras. 

SISCOTEL atiende al publico 
en Rivadavia 822, piso 1°, 
mientras INFOTEL lo hace 
en Bartolome Mitre 9 1 2, pi- 
so 2°, oficina 33; ambos si- 
tuados en la Capital Federal. 
Pero si queremos encontrar 
mas datos sobre cualquiera 
de las dos bases, podran en- 


contrarlos en los avisos que 
ambas publican en la revista 
K 64. 

Los archivos escritos con una 
computadora profesional 
IBM pueden ser leidos o im- 
presos en papel con otra 
computadora MSX. Esta ven- 
taja se debe a que el forma- 
teo de disco entre una IBM 
y una MSX es la misma. 


COMPATIBILIDAD 

MSX 

-LOAD MSX— 


En relacion a la carta publica- 
da en el numero anterior, so- 
bre la' compatibilidad entre 
una CANNON MSX y una 
TALENT MSX, hemos con- 
tinuado investigando y llega- 
mos a la conclusion de que la 
memoria RAM ocupa slots di- 
ferentes entre una y otra 
marca. 

Para los que no estan familia- 
rizados con los terminos de 
computacion, les aclaramos 
que un “slot” es un area don- 
de se puede conectar tanto 
memoria RAM como ROM. 


COMENTARIO DE 
SOFT 


En mi opinion la revista 
cumple con creces su misi6n 
informativa y didactica. Me 
permito sugerirles inciuir, 
aunque sea en forma muy 
sintetica, la utilidad del soft- 
ware de gestion, utilitario y 


educativo, pues estoy infor- 
mado de su disponibilidad, 
pero no de su uso. 

Jorge H. Sardin - San Miguel 


LOAD MSX 


Agradecemos tu sugerencia, 
y como podras notar, ya la 
hemos implementado, pues 
en numeros anteriores expli- 
camos la utilizacion del LO- 
GO, TASWORD, MSX- 
PLAN, MSX-WRITE y otros. 
Esperamos poder continuar 
con estos comentarios, por- 
que tambien nosotros cree- 
mos que son sumamente uti- 
les al lector. 


SIN RESPUESTA 
LOAD MSX 


Recibimos la carta de Marce- 
lo D. Porco de Cap. Fed., 
con dos inquietudes sobre 
unos programas. Pero no pu- 
dimos contestarlas porque 
falta aclarar a que numero de 
revista corresponden a sus 
dudas y el nombre de los pro- 
gramas. 

Pedimos a Marcelo que nos 
haga llegar los datos detalla- 
dos, para que puedan ser re- 
sueltas rapidamente. 


CONCURSO 


Los felicito por vuestra 
revista , que eonsidero de 
lo mas original y comple- 


ta. Soy un usuario de una 
MSX , puesto que un ami- 
go la posee y ademas, 
porque estudio Analista 
de Sistemas de Computa- 
cion en el I.S.E.A. (Insti- 
tute Superior de Estu- 
dios A dministrativos) t 
entidad que otorga titu- 
los oficiales reconocidos 
por el Ministerio de Edu- 
cation y las practicas las 
efectuamos en las 
MSX. 

Me gustaria saber si en 
los eoncursos de progra- 
mas organizados por us- 
tedes , en la section jue- 
gos, solo deben presen- 
tarse programas sobre 
truco y de inteligencia , o 
tambien pueden en- 
viarse algunos refe- 
rentes a otros juegos 
como dados. 

Kay Carlos A. Fraiese - 
Mar del Plata 


LOAD MSX 


Es un placer para nosotros 
recibir elogios como los tu- 
yos porque nos dan fuerzas 
para seguir mejorando. 
Primero te pedimos disculpas 
por no haber contestado tu 
carta anteriormente 
Sucede que las cartas se res- 
ponden respetando el orden 
de llegada, pero queremos 
contestarlas todas. 
Principalmente el juego debe- 
ria estimular a pensar y a to- 
mar decisiones como formu- 
lar preguntas, por ejemplo. 
Estan excluidas las luchas es- 
paciales donde solo se debe 
destruir al enemigo y donde 
el jugador solo emplea sus 
reflejos. 


n « >• a 



dialogo - D. P. 


Comp utac ion, 
una oportunidad para que 
todos ensenen y aprendan 

Un lugar para Actividades '86 Como? 


desarrollar el pensamiento. 

descubrir unavocacion. 

manejar lenguajes de 
computation. 

comprender los multiples usos 
de un computador. 

capacitar y perfeccionar al 
docente. 

incorporar los avances 
tecnologicos. 

que el profesional domine el 
uso de nuevas herramientas. 

que los padres se reencuentren 
con sus hijos. 

"No se trata solamente de 
adquirir en forma puntual 
conocimientos definitivos, 
sino prepararse a elaborar a lo 
largo de toda la vida, un saber 
en constante evolucion y de 
aprender a ser." 

UNESCO 


Talent 


Para Ninos, Adolescentes, 
Adultos, Docentes, 
Profesionales y 
Establecimientos educativos. 

INTRODUCCION A 

MICROCOMPUTADORES 

DIAGRAMACION 

ESTRUCTURADA 

LOGO 

BASIC 

COLOR- SPRITE -SONIDO 

COBOL 

PASCAL 

ASSEMBLER 

MS - DOS YMSX- DOS 

DBASE II -MULTIPLAN 

PROCESADOR DE LA PALABRA 

INSTALACION DE 

LABORATORIOS 

en Establecimientos educativos 

con formacion de multiplicadores 

y apoyo a la comunidad. 



• Taller en grupos de12 a 15 
personas. 

• Clases de 2 horas diarias. 

• 263 alumnos por equipo. 

• Equipos disponibles para 
practicas adicionales en horarios 
libres. 

• Becas rentadas en el 
Departamento de investigation 
y desarrollo de Talent MSX. 

• Becas rentadas para 
docentes en Laboratories 

de Establecimientos Educativos. 

Informes, Inscription y Cursos 

Lunes a Viernes de 8 a 22 hs. 
Sabados de 8 a 13 hs. 

CENTRAL: 

Cabildo 2027 - ler. Piso y 
Juramento 

FI LI ALES: 

Tucuman 2044 1° P. (1050) 
Av. Cordoba 654 P.B. (1054) 
Capital Federal 


Inteligencia en crecimiento. 


Centro para 
el desarrollo de 
la inteligencia. 

Descubramos y construyamos juntos 
caminos que nos permitiran el uso inteligente 
de los productos de la creatividad humana. 



Titulos no oficiales 



A la computadora personal 


Talents® 


nada le es imposible 


g. 

oY 

o 

CQ 

O 



Porque gracias a la norma internacional MSX, la 
TALENT MSX trasciende sus propios limites. 

Hasta ahora, cuando usted compraba una 
computadora personal de cualquier marca, quedaba 
automaticamente desconectado del resto del mundo 
de la computacion. Porque los distintos equipos y 
sistemas no eran compatibles entre si. 

Hasta que dos grandes empresas de informatica, 
la Microsoft Corp. de EE.UU. y la ASCII del Japon se 
pusieron de acuerdo para crear una norma standard: 
la MSX. Que se expandio tambien rapidamente en 
Europa. Y que hoy TALENT presenta por primera vez 
en la Argentina. 

Mientras que la mayoria de las computadoras de su tipo 
que se ofrecen en el mercado nacional, han sido 
discontinuadas por obsoletas en sus lugares de origen, 
TALENT MSX tiene casi ilimitadas posibilidades 
de desarrollo. Porque la norma MSX es en todo el 
mundo inteligencia en crecimiento. 

La TALENT MSX pone a su disposition un mundo de * 
software para elegir. Y con la incorporation de todos 
sus perifericos llega a ser una autentica computadora 
profesional. 


UTIL 

Su poderoso sistema operativo MSX 
permite el acceso a todo tipo de 
procesamiento de datos: 

• Planillas de calculo. 

• Procesadores de palabra. 

• Graficos de negocios. 

• Bases de datos (d Base II. etc.) 

• Contabilidad general, sueldos. y 
jornales. costos. etc., desarrollados 
bajo CP/M en Basic. Coboi. Pascal o C. 

Con la posibilidad^de conexion a linea 
telefonica permite la transference y 
consulta de datos entre computadoras 
personales. profesionales o bancos de 
datos. 

La grabacion de archivos es en formato 
MS-DOS. haciendola compatible con las 
computadoras profesionales. 

DIDACTICA 

Dispone de tres lenguajes para la 
ensenanza de computacion: LOGO como 
lenguaje de induccion para los mas 
chicos. Lenguaje de Programacion en 
Castellano, para todos los que quieran 
aprender a programar sin conocimientos 
previos. Y Basic MSX como lenguaje 


profesional Mas una amplia variedad de 
perifericos como el Mouse. Lapiz Optico. 
Tableta gratica. Track-ball. etc. 

DIVERTIDA 

La mas genial para Video-Juegos. Por la 
amplisima biblioteca de programas 
-todos nuevos- de la norma M$X en el 
mundo. Y ademas, el Basic MSx permite 
al usuario generar sus propios juegos 
con un manejo tan simple, como solo 
TALENT MSX puede ofrecer. 

CARACTERISTICAS TECNICAS 

• Memoria principal 64 KBampliable 
hasta 576 KB. . 

• Memoria de video: 16 KB RAM. 

• ROM incorporada de 32 KB 
con el MSX-Basic de Microsoft. 

• Graficos completes. hasta 32 sprites 
y 16 colores simultaneos. 

• Generador de sonido de 3 voces^ 
y8octavas. 

• Conexion para cualquier grabador. 

• Interfaz para salida impresora paralela. 

• Conectores para cartuchos 
y expansiones. 

• Fuente para 220 V 

y modulador PAL-N incorporado. 


MSX es marca registrada de MICROSOFT CORPORATION 


DISTRIBUIDORES AUTORIZADOS: CAPITAL FEDERAL: AMATRIX, Bolivar 173 - ARGECINT, Av. de Mayo 1402 - BAIDAT COMPUTACION, Juramento 2349 - COMPUPRANOO. Av. de 
Mayo 965 - COMPUSHOP, Cordoba 1464 - COMPUTIQUE, Cordoba 1111, E. P. - COMPUTRONIC, Viamonte 2096 - CP67 CLUB, Florida 683, L, 18 - DALTON COMPUTACION, 
Cabildo 2283 - ELAB, Cabildo 730 - MICROSTAR, Callao 462 - Q.S.P., Bartolome Mitre 864 - SERVICIOS EN INFORMATICA, Parana 164 - DISTRIBUIDORA CONCALES, Tucuman 
1458 - MICROMATICA, Av. Pueyrredon 1135 - ACASSUSO: MICROSTAR ACASSUSO, Eduardo Costa 892 - AVELLANEDA: ARGOS, Av. Mitre 1755 - BOULOGNE: COMPUTIQUE 
CARREFOUR, Bernardo de Irigoyen 2647 - CASTELAR: HOT BIT COMPUTACION, Carlos Casares 997 - LANUS: COMPUTACION LANUS, Caaguazu 2186 - LOMAS DE ZAMORA: 
ARGESIS COMPUTACION, Av. Meeks 269 - MARTINEZ: VIDEO BYTE, Hipolito Yrigoyen 32 - RAMOS MEJIA: MANIAC COMPUTACION, Rivadavia 13734 - SAN ISIDRO: FERNANDO 
CORATELLA, Cosme Beccar 249 - VICENTE LOPEZ: SERVICIOS EN INFORMATICA, Av. del Libertador 882 - BAHIA BLANCA: SERCOM. Donado 327 - SUMASUR, Alsina 236 - LA 
PLATA: CADEMA, Calle 7 N° 1240 - CERO-UNO INFORMATICA, Calle 48 N° 529 - MAR DEL PLATA: FAST, Catamarca 1755 - NECOCHEA: CAFAL. Calle 57 N» 2920 - SERCOM , Calle 57 
N° 2216 - TRENQUE LAUQUEN: C0MPUQUEN, Villegas 231 - CORDOBA: AUTODATA, Pasaje Santa Catalina 27 - TECSIEM. Santa Rosa 715 - ROSARIO: 2001 COMPUTACION, Santa 
Fe 1468 - MINICOMP, Maipu 862 - SIS0R, Urquiza 1062 - SANTA FE: ARGECINT, P. San Martin 2433, L. 36 -SIS0R, Rivadavia 2553- INFORMATICA. San Geronimo 2721/25 - 
VILLA MARIA: JUAN CARLOS TRENTO, 9 de Julio 80 - MENDOZA: INTERFACE, Sarmiento 98 - BIT & BYTE, 9 de Julio 1030 - C0M0D0R0 RIVADAVIA: COMPUSER, 25 de Mayo 827 - 
GENERAL R0CA: DISTRIBUIDORA VECCHI, 25 de Mayo 762 - LA PAMPA: MARINELLI, Pellegrini 155 - NEUQUEN: MEGA, Perito Moreno 383 - EDISA. Roca esq. Fotheringham - RIO 
GRANDE: INFORMATICA M & B, Perito Moreno 290 - SAN CARLOS DE BARILOCHE: L. ROBLEDO & ASOCIADOS, Elfein 13. Piso 1° - TRELEW: SISTEN0VA, Sarmiento 456 -